在本教程中,我们将向您展示如何将log4j框架与Wicket Web应用程序集成。 Wicket框架使用SLF4j API来确保Log4j声明slf4j-log4j12
依赖性。
审查项目环境:
- SLF4j 1.7.7
- Log4j 1.2.17
- 小门6.16.0
- Maven 3
- 雄猫6
- Eclipse开普勒4.3
1.项目目录
查看最终项目结构。
2.项目依赖
声明Wicket和slf4j-log4j12依赖项。
pom.xml
<properties>
<wicket.version>6.16.0</wicket.version>
<slf4j.version>1.7.7</slf4j.version>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-core</artifactId>
<version>${wicket.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j.version}</version>
</dependency>
</dependencies>
图片:Eclipse pom编辑器中的pom.xml,依赖关系层次结构
3. Log4j属性
与往常一样,创建一个log4j.properties文件并将其放入资源文件夹。 请参阅步骤1。
log4j.properties
# Root logger option
log4j.rootLogger=DEBUG, 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
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=${catalina.home}/logs/mywicketapp.log
log4j.appender.file.MaxFileSize=5KB
log4j.appender.file.MaxBackupIndex=5
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.消息记录
使用log4j记录调试和错误消息的示例。
Hello.java
package com.mkyong.hello;
import org.apache.log4j.Logger;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
public class Hello extends WebPage {
// Get logger
private static final Logger logger = Logger.getLogger(Hello.class);
private static final long serialVersionUID = 1L;
public Hello() {
// logs debug
if (logger.isDebugEnabled()) {
logger.debug("Hello()");
}
// logs exception
logger.error("Error message", new Exception("ABC"));
add(new Label("message", "Wicket + Log4j"));
}
}
5.演示
运行Wicket Web应用程序,例如: http:// localhost:8080 / Log4jAndWicket / 。 Wicket和应用程序日志记录都将显示在控制台上,并输出到文件中。
图5.1:Eclipse控制台
图5.2:D:\ apache-tomcat-6.0.37 \ logs \ mywicketapp.log
下载源代码
下载它– WicketAndLog4j.zip (10 KB)
参考文献
翻译自: https://mkyong.com/wicket/wicket-log4j-integration-example/