ssh Struts,Spring,Hibernate Web应用开发2
来源:互联网 发布:ti am5728源码 编辑:程序博客网 时间:2024/05/07 11:18
1.我们已经搭建完了基本框架,接下来加入日志功能,只需修改原来的web.xml,增加一些配置信息:
1<!--通知Spring Log4j配置文件的位置 -->
2<context-param>
3 <param-name>log4jConfigLocation</param-name>
4 <param-value>/WEB-INF/log4j.properties</param-value>
5</context-param>
6
7<!--Spring默认刷新Log4j配置文件的间隔,单位为millisecond-->
8<context-param>
9 <param-name>log4jRefreshInterval</param-name>
10 <param-value>60000</param-value>
11</context-param>
12
13<!--在应用启动时,由Spring负责加载Log4j-->
14<listener>
15 <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
16</listener>
2<context-param>
3 <param-name>log4jConfigLocation</param-name>
4 <param-value>/WEB-INF/log4j.properties</param-value>
5</context-param>
6
7<!--Spring默认刷新Log4j配置文件的间隔,单位为millisecond-->
8<context-param>
9 <param-name>log4jRefreshInterval</param-name>
10 <param-value>60000</param-value>
11</context-param>
12
13<!--在应用启动时,由Spring负责加载Log4j-->
14<listener>
15 <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
16</listener>
2.接下来我们定义log4j.properties
1# Global logging configuration
2log4j.rootLogger=DEBUG,console,file
3
4## APPENDERS ##
5# define an appender named console, which is set to be a ConsoleAppender
6log4j.appender.console=org.apache.log4j.ConsoleAppender
7
8# define an appender named file, which is set to be a RollingFileAppender
9log4j.appender.file=org.apache.log4j.RollingFileAppender
10# replace <CATALINA_HOME> with your true path
11log4j.appender.file.File=D:/eclipse/workspace/login/log.txt
12
13## LAYOUTS ##
14# assign a SimpleLayout to console appender
15log4j.appender.console.layout=org.apache.log4j.SimpleLayout
16
17# assign a PatternLayout to file appender
18log4j.appender.file.layout=org.apache.log4j.PatternLayout
19log4j.appender.file.layout.ConversionPattern=%t%p-%m%n
2log4j.rootLogger=DEBUG,console,file
3
4## APPENDERS ##
5# define an appender named console, which is set to be a ConsoleAppender
6log4j.appender.console=org.apache.log4j.ConsoleAppender
7
8# define an appender named file, which is set to be a RollingFileAppender
9log4j.appender.file=org.apache.log4j.RollingFileAppender
10# replace <CATALINA_HOME> with your true path
11log4j.appender.file.File=D:/eclipse/workspace/login/log.txt
12
13## LAYOUTS ##
14# assign a SimpleLayout to console appender
15log4j.appender.console.layout=org.apache.log4j.SimpleLayout
16
17# assign a PatternLayout to file appender
18log4j.appender.file.layout=org.apache.log4j.PatternLayout
19log4j.appender.file.layout.ConversionPattern=%t%p-%m%n
在log4j.properties中,我们定义了日志级别是DEBUG,日志信息输出目的地是控制台(console)和文件(file)。
3.这样我们就可以在程序代码中进行日志操作了:
1package test.register.action;
2
3import javax.servlet.http.HttpServletRequest;
4import javax.servlet.http.HttpServletResponse;
5
6import org.apache.log4j.LogManager;
7import org.apache.log4j.Logger;
8import org.apache.struts.action.Action;
9import org.apache.struts.action.ActionForm;
10import org.apache.struts.action.ActionForward;
11import org.apache.struts.action.ActionMapping;
12import org.apache.struts.action.DynaActionForm;
13
14import test.register.entity.Register;
15import test.register.service.RegisterService;
16
17public class RegisterAction extends Action{
18
19 private static final Logger log = LogManager.getLogger(RegisterAction.class);
20
21 private RegisterService registerService;
22
23 public RegisterService getRegisterService() {
24 return registerService;
25 }
26
27 public void setRegisterService(RegisterService registerService) {
28 this.registerService = registerService;
29 }
30
31 public ActionForward execute(ActionMapping mapping,
32 ActionForm form,
33 HttpServletRequest request,
34 HttpServletResponse response)
35 throws Exception {
36 log.info("save register");
37 Register r = (Register)((DynaActionForm)form).get("register");
38 getRegisterService().saveRegister(r);
39 return mapping.findForward("success");
40 }
41
42}
2
3import javax.servlet.http.HttpServletRequest;
4import javax.servlet.http.HttpServletResponse;
5
6import org.apache.log4j.LogManager;
7import org.apache.log4j.Logger;
8import org.apache.struts.action.Action;
9import org.apache.struts.action.ActionForm;
10import org.apache.struts.action.ActionForward;
11import org.apache.struts.action.ActionMapping;
12import org.apache.struts.action.DynaActionForm;
13
14import test.register.entity.Register;
15import test.register.service.RegisterService;
16
17public class RegisterAction extends Action{
18
19 private static final Logger log = LogManager.getLogger(RegisterAction.class);
20
21 private RegisterService registerService;
22
23 public RegisterService getRegisterService() {
24 return registerService;
25 }
26
27 public void setRegisterService(RegisterService registerService) {
28 this.registerService = registerService;
29 }
30
31 public ActionForward execute(ActionMapping mapping,
32 ActionForm form,
33 HttpServletRequest request,
34 HttpServletResponse response)
35 throws Exception {
36 log.info("save register");
37 Register r = (Register)((DynaActionForm)form).get("register");
38 getRegisterService().saveRegister(r);
39 return mapping.findForward("success");
40 }
41
42}
4.在上面log4j.properties中,我们指定日志输入文件用了绝对路径,这在很多时候不方便,为此我们作如下修改:在web.xml中增加一个上下文参数
1<context-param>
2 <param-name>webAppRootKey</param-name>
3 <param-value>webLogin.root</param-value>
4</context-param>
2 <param-name>webAppRootKey</param-name>
3 <param-value>webLogin.root</param-value>
4</context-param>
增加系统变量,变量名为webAppRootKey,变量值可以指定应用部署的目录,这样就可以在log4j.properties对日志输出的文件路径作如下修改:
log4j.appender.file.File=${webLogin.root}/log.txt
- ssh Struts,Spring,Hibernate Web应用开发2
- SSH Struts,Spring,Hibernate Web应用开发1
- SSH Struts,Spring,Hibernate Web应用开发3
- SSH Struts,Spring,Hibernate Web应用开发4
- SSH整合Spring、Struts、Hibernate、web配置文件
- spring + struts + hibernate(ssh)开发记录.
- myeclipse 开发SSH(struts+hibernate+spring)
- [原]Java web学习系列之 Java web开发中的SSH整合(Struts、Spring、Hibernate)(上)
- [原]Java web学习系列之 Java web开发中的SSH整合(Struts、Spring、Hibernate)(下)
- J2EE Web应用的轻量级解决方案:SSH(Spring+Struts+Hibernate)解析
- SSH-【struts+spring+hibernate】
- ssh (spring struts hibernate)
- SSH(struts+spring+hibernate)
- SSH(struts+spring+hibernate)
- SSH(struts+spring+hibernate)
- 使用struts+spring+hibernate 组装web应用
- 使用struts+spring+hibernate 组装web应用
- 使用struts+spring+hibernate 组装web应用
- SQL Server 2005报表服务概述
- 人月神话:再谈下CMMI软件过程改进-来自:villa123
- SSH Struts,Spring,Hibernate Web应用开发1
- 软件架构引言之项目管理的问题
- CSDN 2008英雄会 有感
- ssh Struts,Spring,Hibernate Web应用开发2
- 什么是SAP
- SSH Struts,Spring,Hibernate Web应用开发3
- SSH Struts,Spring,Hibernate Web应用开发4
- 开发方法:深入理解敏捷开发的常见误区
- hibernate常用查询语句动态生成类(包括条件和无条件查询)
- (转)【英雄会即时报道】五大CTO畅谈软件公司如何招聘技术人才
- js循环切换显示
- 组播简介