Www.helper3.com
热门关键字: php net javascript java
Struts2基础 专题
专题目录
您的位置:java > Struts2基础专题 > Struts2+Log4j集成
Struts2+Log4j集成
作者:--    发布时间:2019-11-20 10:18:32
在本教程中,我们学习如何将log4j框架在struts2的web应用程序集成。所有需要做的有:
  1. 包含 log4j.jar 作为项目依赖
  2. 创建一个 log4j.properties 文件,并把它放入 classpath 的根目录-放到资源文件夹中。

相关技术和工具的使用:

  1. log4j 1.2.17
  2. struts 2.1.8
  3. tomcat 6
  4. myeclipse 10

1. 工程结构

这里我们创建一个web工程为:struts2log4j,参见下面最终的工程结构:

strruts2-log4j-directory

2. log4j.properties

创建log4j的属性文件,并把它放入资源文件夹,请参阅步骤#1。
log4j.properties
# root logger option
log4j.rootlogger=error, stdout, file

# redirect log messages to console
log4j.appender.stdout=org.apache.log4j.consoleappender
log4j.appender.stdout.target=system.out
log4j.appender.stdout.layout=org.apache.log4j.patternlayout
log4j.appender.stdout.layout.conversionpattern=%d{yyyy-mm-dd hh:mm:ss} %-5p %c{1}:%l - %m%n

# redirect log messages to a log file, support rolling backup file.
log4j.appender.file=org.apache.log4j.rollingfileappender
log4j.appender.file.file=${catalina.home}/logs/mystruts2app.log
log4j.appender.file.maxfilesize=5mb
log4j.appender.file.maxbackupindex=10
log4j.appender.file.layout=org.apache.log4j.patternlayout
log4j.appender.file.layout.conversionpattern=%d{yyyy-mm-dd hh:mm:ss} %-5p %c{1}:%l - %m%n

4. struts2 action 和 logging

一个简单的动作返回一个页面,并显示了如何来执行 log4j 消息日志记录。
welcomeaction.java
package com.h3.common.action;

import org.apache.log4j.logger;
import com.opensymphony.xwork2.actionsupport;

public class welcomeaction extends actionsupport {

	private static final long serialversionuid = 1l;

	//get log4j
	private static final logger logger = logger.getlogger(welcomeaction.class);

	public string execute() throws exception {

		// logs debug message
		if (logger.isdebugenabled()) {
			logger.debug("execute()!");
		}

		// logs exception
		logger.error("this is error message", new exception("testing"));

		return success;

	}
}

5. struts2配置

struts2 的配置和jsp页面,如果想了解的话。
struts.xml
<?xml version="1.0" encoding="utf-8" ?>
<!doctype struts public
"-//apache software foundation//dtd struts configuration 2.0//en"
"http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
	<constant name="struts.devmode" value="true" />

	<package name="welcome" namespace="/" extends="struts-default">

		<action name="welcome" class="com.h3.common.action.welcomeaction">
			<result name="success">pages/success.jsp</result>
		</action>

	</package>

</struts>
web.xml
<web-app xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
	xsi:schemalocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	version="2.5">

	<display-name>struts 2 web application</display-name>

	<filter>
		<filter-name>struts2</filter-name>
		<filter-class>
			org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter
		</filter-class>
	</filter>

	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

</web-app>
pages/success.jsp
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
</head>
 
<body>
<h1>struts 2 + log4j integration example</h1>

</body>
</html>

6. 实例测试

运行struts 2的web应用程序,并访问welcome的动作。

在浏览器中打开 url : http://localhost:8888/struts2log4j/welcome

6.1 所有日志消息将显示在控制台中。

figure : eclipse 终端

6.2 此外,日志文件将在tomcat 的日志文件夹中被创建。

图片: c:\mystruts2app.log


所有评论

loading......

滚动到顶部 滚动到底部
合作联系(微信):
www.helper3.com
关于本站:
宗旨
网站备案号:
粤ICP备17073857号-1

声明:
本站部分内容来自网络,如您发现本站内容侵害到您的利益,请联系本站管理员处理。