Spring MVC + Log4j示例

时间:2020-02-23 14:35:56  来源:igfitidea点击:

在本教程中,我们将看到如何使用log4j集成Spring MVC。

日志记录是编程的重要组成部分。
它有助于开发人员跟踪代码工作流程并有效修复错误。
如果我们在代码中获得任何问题,我们会检查该工作流程或者功能的日志。
log4j是快速,可靠的日志记录框架,可以轻松地与代码集成。

我们将扩展Spring MVC Hello World示例并启用Log4j登录它。

如果我们想知道如何在Maven项目中使用log4j,则可以按照log4j maven集成示例。

我们只需遵循以下步骤即可在Spring MVC中启用Log4j。

  • 将log4j jar放入classpath中,我们可以通过添加依赖于pom.xml来使用maven来为我们进行。
  • 创建log4j.properties并将其放在classpath中(Maven中的资源文件夹)

项目结构:

步骤1:

在POM.xml中添加log4j依赖项for maven项目。
对于非MAVEN项目,请将log4j.jar放在Web-Inf/lib文件夹中。

<dependency>
 <groupId>log4j</groupId>
 <artifactId>log4j</artifactId>
 <version>1.2.17</version>
</dependency>

pom.xml将如下所示:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.igi.theitroad</groupId>
	<artifactId>SpringMVCLog4JExample</artifactId>
	<packaging>war</packaging>
	<version>0.0.1-SNAPSHOT</version>
	<name>SpringMVCLog4JExample Maven Webapp</name>
	<url>http://maven.apache.org</url>
	<dependencies>
 
 
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>3.8.1</version>
			<scope>test</scope>
		</dependency>
 
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<version>3.1.0</version>
		</dependency>
 
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-core</artifactId>
			<version>${spring.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>${spring.version}</version>
		</dependency>
		<dependency>
 <groupId>log4j</groupId>
 <artifactId>log4j</artifactId>
 <version>1.2.17</version>
</dependency>
	</dependencies>
	<build>
		<finalName>SpringMVCLog4JExample</finalName>
 
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.1</version>
				<configuration>
					<source>${jdk.version}</source>
					<target>${jdk.version}</target>
				</configuration>
			</plugin>
		</plugins>
 
	</build>
	<properties>
		<spring.version>4.2.1.RELEASE</spring.version>
		<jdk.version>1.6</jdk.version>
	</properties>
</project>

步骤2:如下所示创建log4j.properties并将其放在Java/Main/Resources文件夹中。

log4j.rootLogger=DEBUG, console, file
 
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%t] %-5p %c %x - %m%n
 
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%t] %-5p %c %x - %m%n
log4j.appender.file.File=applicationLogs.log

第3步:更改helloworldcontroller.java,如下所示:

package org.igi.theitroad.springmvc.controller;
 
import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
 
 
@Controller
public class HelloWorldController {
 
	private static final Logger logger = Logger.getLogger(HelloWorldController.class);
 @RequestMapping("/helloworld")
 public ModelAndView hello() {
 
  String helloWorldMessage = "Hello world from theitroad!";
	logger.info("This is info message");
	logger.error("This is error message");
  
  return new ModelAndView("hello", "message", helloWorldMessage);
 }
}

第4步:运行项目时,我们将得到以下屏幕。

单击链接时,我们将得到以下屏幕。

当我们看到日志时,我们将得到以下条目。

如我们所见,日志记录为我们的Spring MVC项目启用。