
下面用三个实验,更清淅的理解 <jsp:include page=""/> 和 <%@ include file="" %> 的区别。
<jsp:include page=""/> 包含被 include 文件的输出
<%@ include file="" %> 包含被 include 文件的代码
a.jsp 内容:1<jsp:include page="b.jsp" />
b.jsp 内容:(空)
_a.class a.jsp编译成类的内容: Read More- 做了一个 Java 程序放在 Solaris 下运行,用到许多的第三方包,有 *.zip 的和 *.ja r的,放在 lib 目录下,然后写了一个 shell 脚本来运行那个 java 程序,那就要在 classpath 中包含所有在 lib 中的第三方包。
原来的做法是在 classpath中把lib目录中一个个的包文件名用冒号连缀起来,比如
classpath=.:lib/a.jar:lib/b.jar:lib/c.jar:lib/d.zip
java -classpath $classpath com.unmi.Main Read More - 通常在网页里都有一种这样的需求,为了界面整洁,在显示标题时需要把长标题以部分加省略号连缀显示,就比如中国博客网显示日志标题--下面那样
·在VC6中使用正则表达式解析...(2007-06-24)
·VC中使用CInternet...(2007-06-23)
·开源嵌入式数据库 SQLit...(2007-06-23)
问题一是前面那部分字符串怎么来确定,上面很明显示的看得出来,因为标题中混杂着中英文,仍然没有达到初衷。 Read More
原来的项目中基本都是用 JSP+Tag 来展示内容,有时也有 Jasper Report 做报表,报表也算是一种模板技术,只是有些重量级。看过 Spring 的书籍,都会对 Velocity 和 FreeMaker 有介绍,带动了我对先前看过的 *.vm 文件的研究提上了日程,了解之后,已觉相见恨晚。
下面讲利用 Velocity 怎么更好解决目前项目的一个简单问题:系统在进行支付了支付后,自己按设定的信息模板发送一条短信给责任人。信息模板是:
{单据责任人}:您的 {单据号} 号{单据类型}在 {操作日期} 日已支付 Read More
在开源的项目中使用 Log4j一般 都是在类中添加一静态变量,如
protected static Log log = LogFactory.getLog(RequestProcessor.class); //通用日志组件
或
protected static Logger log = Logger.getLogger(RequestProcessor.class); //直接申明为Log4j的logger
原来有一个项目是做了一个自定义了 MyLogger 类, 其中的 debug, info 等到方法直接就是调用 log4j 的 logger 的对应方法. 别的代码中调用 MyLogger 的静态方法打印日志时, 依据log4j.properties的配置显示 %l 定位信息就始终是 MyLogger
如: 2007-05-23 12:18:46,828 [DEBUG] com.unmi.MyLogger.debug(MyLogger.java:12) Hello MyLogger Read More这是当年用 JBuilder 的时候,创建测试用例自动建立的代码布局。 Read More
原来项目中都是自己拿到 mail.jar 和 activation.jar 两个包编写发送Email的代码,虽然不难,但也有些麻烦。
现在好了,在 apache 站点有一个 jarkata/commons/email 子项目,也为我们实现了发送 Email 的功能,在 http://jakarta.apache.org/commons/email/ 把包 commons-email-1.0.jar 下来,自己要写的代码就十分少了,并且非常明了。
这个包的大小只有23K,也就是9个类而已,却能让您省不少事。 Read More
部署一个 Web 应用到 WebSphere Application Server 中,浏览 index.jsp 页面时而正常,时而出现500错误,查看服务器输出日志可以看到以下错误,
E SRVE0026E: [Servlet Error]-[This absolute uri (http://jakarta.apache.org/struts/tags-logic) cannot be resolved in either web.xml or the jar files deployed with this application]: org.apache.jasper.JasperException: This absolute uri (http://jakarta.apache.org/struts/tags-logic) cannot be resolved in either web.xml or the jar files deployed with this application Read More- 有两个java类,源代码如下:
//没指定包名,也就是在默认包中public class B {
public void print(){
System.out.println("Printed By B Class");
}
}package com.unmi;
import B; //引用默认包中的B类
public class A {
public static void main(String[] args) {
B b = new B(); //在A中想要引用默认包中的B类
}
}
先不说在IDE中如何编译它们以及会提示什么语法错误,只是用命令javac来编译它们,先是把它们放在同一个目录下,注意的是,虽然A.java有package unmi.com;声明,我们还是先把它放在下B.java同一目录,希望由javac命令来生成相对应的包目录。 Read More
记得最早在项目中用Log4j的时候,也是觉得在每一个要记载日志的类中或者某个上层类中要声明一个Logger属性挺麻烦的
注(2018-06-30):本文所展示的 Log4J 如何定们位置信息可参考 Log4J 1.2.13 的源代码,新代码可能有出入。1protected static Log log = LogFactory.getLog(Test.class);
或者1protected static Logger log = Logger.getLogger(Test.class);
于是就写了一个自己的Logger类UnmiLogger,也就是把Log4j的Logger包装一下,直接调用Logger的日志输出方法,info、debug、warn等,只不过在UnmiLogger中把日志输出方法都改为静态的,让在别的代码中方便使用。 Read More