Skip to content

Commit 5d7380f

Browse files
committed
2016-04-21日志输出框架改为Logback
1 parent c3ed992 commit 5d7380f

5 files changed

Lines changed: 128 additions & 15 deletions

File tree

pom.xml

Lines changed: 33 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
<mysql-connector.version>5.1.21</mysql-connector.version>
4040
<druid.version>1.0.4</druid.version>
4141

42-
<slf4j.version>1.7.7</slf4j.version>
42+
<!--<slf4j.version>1.7.7</slf4j.version>-->
4343
<log4j.version>1.2.17</log4j.version>
4444

4545
<javaee-api.version>7.0</javaee-api.version>
@@ -270,23 +270,44 @@
270270

271271
<!-- 日志文件管理包 start -->
272272
<!--下面这三个是配套使用:http://blog.csdn.net/woshiwxw765/article/details/7624556-->
273+
<!--使用log4j start-->
274+
<!--<dependency>-->
275+
<!--<groupId>log4j</groupId>-->
276+
<!--<artifactId>log4j</artifactId>-->
277+
<!--<version>${log4j.version}</version>-->
278+
<!--</dependency>-->
279+
280+
<!--<dependency>-->
281+
<!--<groupId>org.slf4j</groupId>-->
282+
<!--<artifactId>slf4j-api</artifactId>-->
283+
<!--<version>${slf4j.version}</version>-->
284+
<!--</dependency>-->
285+
286+
<!--<dependency>-->
287+
<!--<groupId>org.slf4j</groupId>-->
288+
<!--<artifactId>slf4j-log4j12</artifactId>-->
289+
<!--<version>${slf4j.version}</version>-->
290+
<!--</dependency>-->
291+
<!--使用log4j end-->
292+
293+
<!--使用logback start-->
294+
<!--导入这个的时候会自动导入:slf4j-api、logback-core,所以我们还需要导入:log4j和logback-ext-spring-->
273295
<dependency>
274-
<groupId>log4j</groupId>
275-
<artifactId>log4j</artifactId>
276-
<version>${log4j.version}</version>
296+
<groupId>ch.qos.logback</groupId>
297+
<artifactId>logback-classic</artifactId>
298+
<version>1.1.7</version>
277299
</dependency>
278-
279300
<dependency>
280-
<groupId>org.slf4j</groupId>
281-
<artifactId>slf4j-api</artifactId>
282-
<version>${slf4j.version}</version>
301+
<groupId>log4j</groupId>
302+
<artifactId>log4j</artifactId>
303+
<version>1.2.17</version>
283304
</dependency>
284-
285305
<dependency>
286-
<groupId>org.slf4j</groupId>
287-
<artifactId>slf4j-log4j12</artifactId>
288-
<version>${slf4j.version}</version>
306+
<groupId>org.logback-extensions</groupId>
307+
<artifactId>logback-ext-spring</artifactId>
308+
<version>0.1.4</version>
289309
</dependency>
310+
<!--使用logback end-->
290311
<!-- 日志文件管理包 end -->
291312

292313

src/main/java/com/youmeek/ssm/module/user/controller/SysUserController.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,23 @@
22

33
import com.youmeek.ssm.module.user.pojo.SysUser;
44
import com.youmeek.ssm.module.user.service.SysUserService;
5+
import org.slf4j.Logger;
6+
import org.slf4j.LoggerFactory;
57
import org.springframework.stereotype.Controller;
68
import org.springframework.ui.Model;
79
import org.springframework.web.bind.annotation.PathVariable;
810
import org.springframework.web.bind.annotation.RequestMapping;
911
import org.springframework.web.bind.annotation.ResponseBody;
1012

1113
import javax.annotation.Resource;
14+
import java.util.Date;
1215

1316
@Controller
1417
@RequestMapping("/sysUserController")
1518
public class SysUserController {
19+
20+
static final Logger LOG = LoggerFactory.getLogger(SysUserController.class);
21+
1622
@Resource
1723
private SysUserService sysUserService;
1824

@@ -31,6 +37,17 @@ public SysUser showUser(@PathVariable("userId") Long userId){
3137
}
3238

3339

40+
@RequestMapping("/test-logback")
41+
@ResponseBody
42+
public Date testLogback(){
43+
LOG.trace("-----------------------------------trace");
44+
LOG.debug("-----------------------------------debug");
45+
LOG.info("-----------------------------------info");
46+
LOG.warn("-----------------------------------warn");
47+
LOG.error("-----------------------------------error");
48+
return new Date();
49+
}
50+
3451

3552

3653

src/main/resources/logback.xml

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<configuration>
3+
4+
<!--参考文章:-->
5+
<!--http://blog.csdn.net/wangjunjun2008/article/details/18732019-->
6+
<!--http://blog.csdn.net/evankaka/article/details/50637994-->
7+
8+
9+
<!--======================================================-->
10+
11+
12+
<!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
13+
<!--Windows 可以使用类似:D:/log-->
14+
<!--Linux 可以使用类似:/opt/tomcat/logs-->
15+
<property name="LOG_HOME" value="D:/" />
16+
17+
<!--======================================================-->
18+
19+
20+
<!--输出到控制台的设置-->
21+
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
22+
<layout class="ch.qos.logback.classic.PatternLayout">
23+
<Pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] -- [%p] -- [%thread >>>> %F:%L >>>> Method = %M] -- [Content = %m]%n</Pattern>
24+
</layout>
25+
</appender>
26+
27+
28+
<!-- 按照每天生成日志文件 -->
29+
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
30+
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
31+
<!--日志文件输出的路径+文件名-->
32+
<FileNamePattern>${LOG_HOME}/logbackOutFile.log.%d{yyyy-MM-dd}.log</FileNamePattern>
33+
<!--日志文件保留天数-->
34+
<MaxHistory>30</MaxHistory>
35+
</rollingPolicy>
36+
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
37+
<pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] -- [%p] -- [%thread >>>> %F:%L >>>> Method = %M] -- [Content = %m]%n</pattern>
38+
</encoder>
39+
<!--日志文件最大的大小-->
40+
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
41+
<MaxFileSize>10MB</MaxFileSize>
42+
</triggeringPolicy>
43+
</appender>
44+
45+
<!--======================================================-->
46+
47+
<!--级别:ALL > TRACE > DEBUG > INFO > WARN > ERROR-->
48+
<!--对特定目录或是类进行指定级别输出,而不使用root的级别-->
49+
<logger name="com.youmeek" level="TRACE"/>
50+
51+
<!--myibatis log configure-->
52+
<logger name="com.apache.ibatis" level="TRACE"/>
53+
<logger name="java.sql.Connection" level="DEBUG"/>
54+
<logger name="java.sql.Statement" level="DEBUG"/>
55+
<logger name="java.sql.PreparedStatement" level="DEBUG"/>
56+
57+
58+
<!-- show parameters for hibernate sql 专为 Hibernate 定制 -->
59+
<!--
60+
<logger name="org.hibernate.type.descriptor.sql.BasicBinder" level="TRACE" />
61+
<logger name="org.hibernate.type.descriptor.sql.BasicExtractor" level="DEBUG" />
62+
<logger name="org.hibernate.SQL" level="DEBUG" />
63+
<logger name="org.hibernate.engine.QueryParameters" level="DEBUG" />
64+
<logger name="org.hibernate.engine.query.HQLQueryPlan" level="DEBUG" />
65+
-->
66+
67+
<!--======================================================-->
68+
69+
<!--默认所有级别是 debug,使用控制台和文件两种类型都进行输出输出,如果只要使用一种控制台输出的话,则下面把FILE那一行去掉即可-->
70+
<root level="TRACE">
71+
<appender-ref ref="STDOUT" />
72+
<appender-ref ref="FILE" />
73+
</root>
74+
75+
76+
77+
</configuration>

src/test/java/com/youmeek/ssm/SSMTest.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import com.youmeek.ssm.module.user.pojo.SysUser;
44
import com.youmeek.ssm.module.user.service.SysUserService;
5-
import org.apache.log4j.Logger;
65
import org.junit.Test;
76
import org.junit.runner.RunWith;
87
import org.springframework.test.context.ContextConfiguration;
@@ -14,14 +13,13 @@
1413
@ContextConfiguration(locations = {"classpath*:spring/applicationContext*.xml"})
1514
public class SSMTest {
1615

17-
private Logger logger = Logger.getLogger(this.getClass().getName());
1816

1917
@Resource
2018
private SysUserService sysUserService;
2119

2220
@Test
2321
public void test1() {
2422
SysUser sysUser = sysUserService.getById(1L);
25-
logger.info("--------------------------------" + sysUser.toString());
23+
System.out.println("--------------------------------" + sysUser.toString());
2624
}
2725
}

0 commit comments

Comments
 (0)