①使用到的jar包:

大概是这几个,具体我也不知道是哪一个,下次使用的时候自己测试下。

commons-logging-1.2.jar

commons-discovery-0.5.jar

log4j-1.2.17.jar

②log4j.properties

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
log4j.rootLogger=DEBUG,CONSOLE,A
log4j.addivity.org.apache=
false
 
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=DEBUG
log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss} -%-4r [%t] %-5p  %x - %m%n
log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.Encoding=gbk
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
 
 
log4j.appender.A=org.apache.log4j.DailyRollingFileAppender  
log4j.appender.A.File=${catalina.home}/logs/kentra_log/PurePro_
log4j.appender.A.DatePattern=yyyy-MM-dd
'.log'
log4j.appender.A.layout=org.apache.log4j.PatternLayout  
log4j.appender.A.layout.ConversionPattern=[FH_sys]  %d{yyyy-MM-dd HH\:mm\:ss} %5p %c{
1
}\:%L \: %m%n
 
log4j.logger.java.sql.ResultSet=INFO  
log4j.logger.org.apache=INFO  
log4j.logger.java.sql.Connection=DEBUG  
log4j.logger.java.sql.Statement=DEBUG  
log4j.logger.java.sql.PreparedStatement=DEBUG

③log4j.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?xml version=
"1.0" 
encoding=
"UTF-8"
?>
<!DOCTYPE log4j:configuration PUBLIC 
"-//APACHE//DTD LOG4J 1.2//EN" 
"log4j.dtd"
>
<log4j:configuration xmlns:log4j=
"http://jakarta.apache.org/log4j/"
>
 
    
<!-- Appenders -->
    
<appender name=
"console" 
class
=
"org.apache.log4j.ConsoleAppender"
>
        
<param name=
"Target" 
value=
"System.out" 
/>
        
<layout 
class
=
"org.apache.log4j.PatternLayout"
>
            
<param name=
"ConversionPattern" 
value=
"%d{yyyy HH:mm:ss} %-5p %c - %m%n" 
/>
        
</layout>
    
</appender>
     
    
<!-- Application Loggers -->
    
<logger name=
"com.kentra"
>
        
<level value=
"info" 
/>
    
</logger>
     
    
<!-- 3rdparty Loggers -->
    
<logger name=
"org.springframework.core"
>
        
<level value=
"info" 
/>
    
</logger>
     
    
<logger name=
"org.springframework.beans"
>
        
<level value=
"info" 
/>
    
</logger>
     
    
<logger name=
"org.springframework.context"
>
        
<level value=
"info" 
/>
    
</logger>
 
    
<logger name=
"org.springframework.web"
>
        
<level value=
"info" 
/>
    
</logger>
 
    
<logger name=
"org.springframework.jdbc"
>
        
<level value=
"info" 
/>
    
</logger>
 
    
<logger name=
"org.mybatis.spring"
>
        
<level value=
"info" 
/>
    
</logger>
    
<logger name=
"java.sql"
>
        
<level value=
"info" 
/>
    
</logger>
    
<!-- Root Logger -->
    
<root>
        
<priority value=
"info" 
/>
        
<appender-ref ref=
"console" 
/>
    
</root>
     
</log4j:configuration>

④Logger.java工具类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
package 
com.kentra.util;
 
/** 
 
* 说明:日志处理
 
* 创建人:KENTRASOFT
 
* 修改时间:2014年9月20日
 
* @version
 
*/
public 
class 
Logger {
 
    
private 
org.apache.log4j.Logger logger;
 
     
    
/**
     
* 构造方法,初始化Log4j的日志对象
     
*/
    
private 
Logger(org.apache.log4j.Logger log4jLogger) {
        
logger = log4jLogger;
    
}
 
    
/**
     
* 获取构造器,根据类初始化Logger对象
     
     
* @param Class
     
*            Class对象
     
* @return Logger对象
     
*/
    
public 
static 
Logger getLogger(Class classObject) {
        
return 
new 
Logger(org.apache.log4j.Logger.getLogger(classObject));
    
}
 
    
/**
     
* 获取构造器,根据类名初始化Logger对象
     
     
* @param String
     
*            类名字符串
     
* @return Logger对象
     
*/
    
public 
static 
Logger getLogger(String loggerName) {
        
return 
new 
Logger(org.apache.log4j.Logger.getLogger(loggerName));
    
}
 
    
public 
void 
debug(Object object) {
        
logger.debug(object);
    
}
 
    
public 
void 
debug(Object object, Throwable e) {
        
logger.debug(object, e);
    
}
 
    
public 
void 
info(Object object) {
        
logger.info(object);
    
}
 
    
public 
void 
info(Object object, Throwable e) {
        
logger.info(object, e);
    
}
 
    
public 
void 
warn(Object object) {
        
logger.warn(object);
    
}
 
    
public 
void 
warn(Object object, Throwable e) {
        
logger.warn(object, e);
    
}
 
    
public 
void 
error(Object object) {
        
logger.error(object);
    
}
 
    
public 
void 
error(Object object, Throwable e) {
        
logger.error(object, e);
    
}
 
    
public 
void 
fatal(Object object) {
        
logger.fatal(object);
    
}
 
    
public 
String getName() {
        
return 
logger.getName();
    
}
 
    
public 
org.apache.log4j.Logger getLog4jLogger() {
        
return 
logger;
    
}
 
    
public 
boolean 
equals(Logger newLogger) {
        
return 
logger.equals(newLogger.getLog4jLogger());
    
}
}

⑤使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/**保存
     
* @param
     
* @throws Exception
     
*/
    
@RequestMapping
(value=
"/save"
)
    
@ResponseBody
    
public 
ResultUtil save(Supervision supervision,String fileGrids) 
throws 
Exception{
        
String busId = 
this
.get32UUID();
        
if
(!Jurisdiction.buttonJurisdiction(
this
.getPageData().getString(
"key"
))){
return 
null
;} 
//校验权限
        
supervision.setId(busId);
        
supervision.setCreatTime(DateUtil.getTime());
        
supervisionService.save(supervision);
        
logger.info(
"-----------日志打印------------"
);
        
logBefore(logger, busId, Jurisdiction.getUsername(), 
"督办单-新增"
);
        
return 
ResultUtil.success(
"添加成功!"
"supervision"
""
"closeCurrent"
); 
    
}