码迷,mamicode.com
首页 > 编程语言 > 详细

log4j.jar 的 简单 使用

时间:2016-04-07 22:10:03      阅读:272      评论:0      收藏:0      [点我收藏+]

标签:

log4j.jar 用于记录 java 程序 日志,在项目开发中非常有用

log4j.properties 配置  ( 放在使用到 log4j.jar Logger 的  类 同一个包下)

log4j 有五个输出级别。此处用 info 级别举例。

1: 日志  输出到 控制台( 更好的格式化 输出信息到控制台,此处只 输出  日志信息 内容 ,日志信息格式化 还有有很多相应的参数)

1 log4j.rootLogger=INFO,appender1
2 
3 # 输出到控制台
4 log4j.appender.appender1=org.apache.log4j.ConsoleAppender 
5 log4j.appender.appender1.layout=org.apache.log4j.PatternLayout 
6 log4j.appender.appender1.layout.ConversionPattern=  %m%n 

 

2: 输出到文件(输出到 项目下根目录 下  log/log.log 文件中,文件内存最大值、文件最大个数可扩展)

1 log4j.rootLogger=INFO,appender2
2 log4j.appender.appender2=org.apache.log4j.FileAppender 
3 log4j.appender.appender2.File=log/log.log 
4 log4j.appender.appender2.layout=org.apache.log4j.PatternLayout 
5 log4j.appender.appender2.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss:SSS}[%p]: %m%n 

3: 输出到数据库 (必须有 mysql 的那个jar 包 ,注意配置文件log4j.properties 要符合 properties文件写法,value 之后不要有多余的空格 !)

此时  创建 mysql 数据表

id int  主键,自增   // 索引作用 

info varchar(200) not null   // 日志记录的信息

 

1 log4j.rootLogger=INFO,appender3   
2 log4j.appender.appender3=org.apache.log4j.jdbc.JDBCAppender
3 log4j.appender.appender3.driver=com.mysql.jdbc.Driver
4 log4j.appender.appender3.URL=jdbc:mysql://localhost:3306/downloadbar?useUnicode=true&characterEncoding=UTF-8
5 log4j.appender.appender3.user=root
6 log4j.appender.appender3.password=123456
7 log4j.appender.appender3.sql=insert into ndlog  values(default,‘%m‘)
8 log4j.appender.appender3.layout=org.apache.log4j.PatternLayout

 

java 使用

 1 import org.apache.log4j.Logger;
 2 import org.apache.log4j.PropertyConfigurator;
 3 
 4 public class Test {
 5     public static Logger log;
 6     static {
 7         PropertyConfigurator.configure(Test.class.getResourceAsStream("log4j.properties"));
 8         Test.log = Logger.getLogger(loginsertDb.Test.class);
 9     }
10 
11     public static void main(String[] args) {
12 
13         Test.log.info("http://7jpo9g.com1.z0.glb.clouddn.com/3814901_ejrngi.jpg" + "z@c"
14                 + "java.net.SocketTimeoutException: Read timed out");
15         16 
17         
18     }
19 }

 

假如有如下情况: Client.java  要输出 两种不同的信息 到不同的位置,  信息一 输出到文件,信息二输出到 数据库

 建立两个包,两个包下都有相应的 如 Test 类 的  类文件,两个包下都有各自的 log4j.properties 文件。(定义 不同的输出位置;

Client 中调用  方式:

1 public class Client {
2      public static void main(String[] args) {
3         Test.log.info("写入数据库的信息");
4         Test2.log.info("写入文件的信息");
5     }
6 }

可 实现  上述效果。

 

log4j.jar 的 简单 使用

标签:

原文地址:http://www.cnblogs.com/ChuangZhang/p/5365651.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!