log4j可以支持将log输出到文件,数据库,甚至远程服务器,这次给大家分享下如何输出到mysql中。
(1)log4j.properties的配置内容如下:
- log4j.rootLogger=ERROR,appender1,appender2
- log4j.appender.appender1=org.apache.log4j.ConsoleAppender
- log4j.appender.appender1.layout=org.apache.log4j.PatternLayout
- log4j.appender.appender1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss:SSS}[%p]: %m%n
- log4j.appender.appender2=org.apache.log4j.jdbc.JDBCAppender
- log4j.appender.appender2.driver=com.mysql.jdbc.Driver
- log4j.appender.appender2.URL=jdbc:mysql://localhost:3306/zuidaima_log4j_write_mysql?useUnicode=true&characterEncoding=UTF-8
- log4j.appender.appender2.user=root
- log4j.appender.appender2.password=111111
- log4j.appender.appender2.sql=insert into zuidaima_log (create_time,log) VALUES ('%d{yyyy-MM-dd hh:mm:ss}', '%c %p %m %n')
- log4j.appender.appender2.layout=org.apache.log4j.PatternLayout
(2)mysql建表语句
- create database `zuidaima_log4j_write_mysql`;
- use `zuidaima_log4j_write_mysql`;
- CREATE TABLE `zuidaima_log` (
- `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
- `create_time` datetime NOT NULL,
- `log` varchar(200) NOT NULL,
- PRIMARY KEY (`id`)
- ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
来源: http://www.phpxs.com/code/1002742/