struts2中配置log4j 案例


首先导入log4j包到项目的WEB-INF/lib中
1,创建serverlet用来初始化log4j property 文件,加载log4j,
代码如下:
package utill;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;
import org.apache.log4j.PropertyConfigurator;

public class Log4jInitServlet extends HttpServlet{

    private static final long serialVersionUID = 1L;
    
    public void service(ServletRequest req, ServletResponse resp) throws ServletException, IOException {           
    }
    public void init() throws ServletException {   
    
        System.setProperty("logPath", "C://Documents and Settings//jl60155//webIVR-workspace//ScriptMaint-WebVersion//logs//myLog.log"); 
        System.err.println("Log4j Servlet test Path: " + System.getProperty("logPath"));
       
        PropertyConfigurator.configure(getServletContext().getRealPath("/") + getInitParameter("configfile"));   
    }  
}

注: 以上log文件位置进行了hardcode, 在项目中应用可用读取属性文件动态加载.

2,配置web.xml,使web services启动时初始化第一步中创建的serverlet 类:
加入如下代码:

 <servlet>  
    <servlet-name>log4j config file</servlet-name>  
    <servlet-class>utill.Log4jInitServlet</servlet-class>  
    <init-param>  
        <param-name>configfile</param-name>  
        <param-value>WEB-INF/log4j.properties</param-value>  
    </init-param>  
       
    <load-on-startup>1</load-on-startup>  
  </servlet>

3,创建log4j.properties文件:
内容如下:

#log4j.rootLogger=debug, A1
log4j.logger.ScriptMaint=debug, A1

log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.file=${logPath}
log4j.appender.A1.DatePattern=yyyy-MM-dd'.log'
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss, SSS}[%c]-[%p] %m%n

注: 该文件位置取决于web.xml的配置位置, 这里根据项目需要定义了自己的logger,未使用rootLooger,(rootLooger会打印出应用框架中root级别的log信息,
这里是struts2核心jar包中定义的,我没有找到控制方法也不想去修改struts2 jar包,虽然是开源的,项目没那需要,故,使用了自定义的looger), 这里我们用${logPath}获取我们
在初始化的serverlet中设置的系统变量

4, action 中使用looger必要信息:
导入包:
import org.apache.log4j.Logger;
获取looger 付给我们自定义的logger变量:
private static Logger logger = Logger.getLogger("ScriptMaint");
在执行方法execute()中使用:
logger.debug("William Test LOG!");

到我们配置的log文件中查看,正常输出log信息,测试成功!




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一共四个,其pdf 三个包,源码一个包 第一章 J2EE快速入门 1.1 J2EE概述 1.1.1 J2EE的来源 1.1.2 J2EE整体框架 1.1.3 从J2EE到JavaEE 1.2 J2EE组件 1.2.1 客户端组件 1.2.2 Web组件 1.2.3 业务逻辑组件 1.3 J2EE容器 1.3.1 容器服务 1.3.2 容器类型 1.4 J2EE核心技术 1.4.1 Servlet 1.4.2 JSP(Java服务页面) 1.4.3 EJB(企业JavaBean) 1.4.4 JDBC(Java数据库连接) 1.4.5 JTA/JTS(Java事务) 1.4.6 JNDI(Java命名和目录服务) 1.4.7 JavaMail(Java邮件服务) 1.4.8 RMI(远程方法调用) 1.4.9 JMS(Java消息服务) 1.4.10 JMX(Java分布式管理) 1.4.11 JACC(Java容器授权合同) 1.4.12 JCA(Java连接器体系) 1.5 小结 第二章 MVC模式介绍 2.1 MVC模式概述 2.1.1 MVC模式的设计思想 2.1.2 MVC模式的处理过程 2.2 Model规范 2.2.1 Model1规范 2.2.2 Model2规范 2.3 使用MVC的优劣 2.3.1 使用MVC模式的好处 2.3.2 使用MVC模式的不足之处 2.4 目前市场上常见的轻量级J2EE开发容器 2.5 小结 第二篇 建立和使用J2EE的开发平台 第三章 建立Java的开发平台 3.1 建立Java的开发环境 3.1.1 下载JDK 3.1.2 安装JDK 3.1.3 设定Path、Classpath和JAVA_HOME 3.2 验证JDK是否安装成功 3.3 建立J2EE的开发环境 3.3.1 下载SDK 3.3.2 安装SDK 3.3.3 设定Path、Classpath和J2EE_HOME 3.4 小结 第四章 Tomcat使用指南 4.1 Tomcat简介 4.1.1 Tomcat的目录结构 4.1.2 Tomcat的配置参数 4.2 建立Tomcat的开发环境 4.2.1 下载Tomcat 4.2.2 设定TOMCAT_HOME 4.3 验证Tomcat是否安装成功 4.4 创建和发布Web应用 4.4.1 创建和发布JSP应用程序 4.4.2 创建和发布Servlet应用程序 4.5 小结 第五章 Eclipse使用指南 5.1 Eclipse简介 5.1.1 Eclipse的历史 5.1.2 Eclipse的运行机制 5.2 建立Eclipse的开发环境 5.2.1 下载Eclipse 5.2.2 配置Eclipse 5.3 整合Eclipse和Tomcat 5.3.1 下载Eclipse的Tomcat插件 5.3.2 为Eclipse配置Tomcat插件 5.4 使用Eclipse建立Web开发项目 5.5 Eclipse的常用快捷键 5.5.1 有关格式化的快捷键 5.5.2 有关调试的快捷键 5.5.3 有关重构的快捷键 5.6 小结 第六章 Log4j使用指南 6.1 Log4j介绍 6.1.1 Log4j历史 6.1.2 Log4j组成 6.2 建立Log4j的开发环境 6.2.1 下载Log4j 6.2.2 配置Log4j 6.3 Log4j的使用方法 6.3.1 配置Log4j 6.3.2 配置Logger 6.3.3 指定日志输出位置 6.3.4 指定日志输出格式 6.3.5 指定日志输出优先级 6.3.6 在代码使用Log4j 6.4 改进Log4j 6.5 小结 第七章 Ant使用指南 7.1 Ant介绍 7.1.1 Ant简介 7.1.2 为什么要使用Ant 7.2 建立Ant的开发环境 7.2.1 下载Ant 7.2.2 配置Ant 7.3 Ant的使用方法 7.3.1 Ant能完成的工作 7.3.2 配置文件build.xml 7.3.3 编译源代码 7.3.4 创建JAR文件 7.4 小结 第八章 JUnit使用指南 8.1 JUnit介绍 8.1.1 JUnit简介 8.1.2 为什么要使用JUnit 8.2 建立JUnit的开发环境 8.2.1 下载JUnit 8.2.2 配置JUnit 8.3 JUnit的使用方法 8.3.1 继承TestCase 8.3.2 编写测试方法 8.3.3 编写断言 8.4 JUnit的新特性 8.4.1 改变测试方法的命名方式 8.4.2 不再继承TestCase 8.4.3 改变初始化和销毁方式 8.4.4 改变异常处理的方式 8.5 小结 第九章 CVS使用指南 9.1 CVS介绍 9.1.1 CVS简介 9.1
这是一个实际使用的项目,可访问 http://cdbke.cuit.edu.cn 可查看效果及功能,后台需要登录后才能使用(出于安全性考虑这里就不给大家介绍了,另外还有一个struts1版本的,如有需要可以与我联系)。 此项目整合了目前主流和最前源的web开发技术:采用ehcache实现二级缓存(包含查询缓存);用sf4j及logback(log4j的升级版)记录日志;proxool(据说是dbcp和c3p0三者最优秀的)做连接池;使用jquery的ajax实现仿google人名自动补全;头像上传剪切压缩处理。 包含有完整的jar包和源代码,可以直接下载编译部署和运行,这是专门为我们实验室定制开发的。虽然后台逻辑并不复杂,但已经包含了架构基于s2sh技术型系统的全部基础部分:如分页,缓存,文件上传,连接池等。很适合学习使用,希望对初学JavaEE WEB开的人有所帮助。 这个资源在去年发布了第一版,已经有很多朋友下了觉得对他们有帮助,所以我才再发了一个第二版,希望对有需要的朋友有所帮助。本版本全面更新了jar包,全部使用了当前最新版本的jar包,struct2.1.8 spring3 hibernate3.5,全面使用注解取代xm的l配置。 另外增加了一个ant构建脚本,支持使用hudson完成每日构建,持续集成,自动测试,代码规范检查,代码审查等功能(与此相关的jar包由于上传文件大小限制未导入) 本系统一直在使用,所以还会不段更新,之后我打算再做一个基于javaee6的实现,给需要想学习ejb3.1等技术的朋友一个参考实现 集成测试相关jar包和更新构建脚本下载:http://download.csdn.net/source/2427972
要在 JSP 项目配置 Struts2,需要遵循以下步骤: 1. 引入 Struts2 库:将 Struts2 库添加到项目的 classpath 。可以从 Struts2 官网上下载最新版本的库文件。 2. 配置 web.xml:在 web.xml 文件添加 Struts2 的配置信息。可以参考以下示例: ``` <web-app> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app> ``` 3. 配置 struts.xml:创建一个名为 struts.xml 的配置文件,并将其放置在项目的类路径下。该文件包含了 Struts2 框架的配置信息,例如拦截器、Action 等。可以参考以下示例: ``` <struts> <package name="default" extends="struts-default"> <action name="hello" class="com.example.HelloAction"> <result name="success">/hello.jsp</result> </action> </package> </struts> ``` 在上面的示例,定义了一个名为 "hello" 的 Action,它的类为 com.example.HelloAction,并且成功时返回 /hello.jsp 页面。 4. 创建 Action 类:创建一个 Java 类来处理请求并返回响应。可以继承 ActionSupport 类,该类提供了一些常用的方法,例如获取请求参数、设置响应结果等。可以参考以下示例: ``` public class HelloAction extends ActionSupport { private String message; public String execute() { message = "Hello, world!"; return SUCCESS; } public String getMessage() { return message; } } ``` 在上面的示例,定义了一个名为 "message" 的属性和一个名为 "execute" 的方法,该方法返回 SUCCESS 常量。 5. 创建 JSP 页面:创建一个 JSP 页面来显示响应结果。可以参考以下示例: ``` <%@ taglib prefix="s" uri="/struts-tags"%> <html> <head> <title>Hello, world!</title> </head> <body> <h1><s:property value="message"/></h1> </body> </html> ``` 在上面的示例,使用 Struts2 标签库的 s:property 标签来显示 "message" 属性的值。 完成上述步骤后,就可以在 JSP 项目使用 Struts2 来处理请求和返回响应了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值