table:
----------------
create table log4j_messages
(
log_id serial not null,
message varchar(2000),
classtype varchar(255),
priority varchar(64),
log_date timestamp
);
log4j.properties:
-----------------
### JDBC appender
log4j.appender.jdbc=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.jdbc.driver=org.postgresql.Driver
log4j.appender.jdbc.URL=jdbc:postgresql://localhost:5432/postgres
log4j.appender.jdbc.user=jiasudu
log4j.appender.jdbc.password=8080
log4j.appender.jdbc.sql=INSERT INTO log4j_messages (message, class,
priority, log_date) values ('%m', '%c', '%p', to_timestamp('%d',
'YYYY-MM-DD HH24:MI:SS,MS'))
%m 表示你log中定义的消息 Connected and logged in to
%c 具体的类
%p INFO
to_timestamp('%d',YYYY-MM-DD HH24:MI:SS,MS') to_timestamp('2009-05-06 15:52:50,156',YYYY-MM-DD HH24:MI:SS,MS')
1. 在mysql中创建库logdb
create database;
2. 在库logdb中创建表muglog,
create table muglog{
id INT(4) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
logdate DATE,
logger VARCHAR(50),
priority VARCHAR(50),
message VARCHAR(255)
};
3. 修改log4j.properties
### 限制com.bob.digester(名:dig)才会log on JDBCAppender ###
log4j.logger.com.bob.digester=info, dig
log4j.appender.dig=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.dig.URL=jdbc:mysql://localhost/logdb
log4j.appender.dig.driver=com.mysql.jdbc.Driver
log4j.appender.dig.user=root
log4j.appender.dig.password=
log4j.appender.dig.sql=INSERT INTO MUGLOG (LOGDATE, LOGGER, PRIORITY, MESSAGE) VALUES ('%d', '%c', '%p', '%m')
log4j.appender.dig.layout=org.apache.log4j.PatternLayout
4. 注意,这里mysql的driver是mysql-connector-java-3.0.14-production-bin.jar里的com.mysql.jdbc.Driver
所以,把它放到classpath里, 如在Eclipse测试,需放到project的java build path的Libraries里
分享到:
相关推荐
配置log4j配置数据库连接池(以dbcp连接池为例),并将log信息存储在数据库中(以mysql为例)
给Log4j配上数据库连接池
log4j功能强大,但是将日志写入数据库,感觉其性能相当差,究其原因是:log4j在每写一次日志的时候都建立和释放一个数据库连接,系统的性能消耗在频繁建立昂贵的连接...本例简单的实现Log4j连接池,一起学习,不吝赐教
Java数据库连接驱动下载 log4j-1.2.8.jar 驱动下载
log4j配置文件,properties,连接数据库使用到,直接在里面更改资源配置,不用在类里面更改
一、运行部署 1、将LogerWriteMySqlDemo项目导入Eclipse 2、修改db.properties文件中数据库...三、配置文件db.properties、log4j.properties两个配置文件可以通过servlet配置来使用,也可以直接先用DbUtil.java中先测试
mybatis jar包 log4j jar包 maybatis连接数据库 log4j打印日志文件
log4j....的详细配置信息,包括发送日志信息,连接数据库,插入Log信息到数据库等等,值得收藏... 感谢新浪 - Captain
Java连接MySQL数据库查询。 使用C3P0连接池查询数据库,用log4j做日志。
import org.apache.log4j.PropertyConfigurator; public class ConfigSQLHelper { protected static Properties pro = null; protected static InputStream is = null; protected static Connection conn = null; ...
本包需要用到log4j,请在调用时确保存在log4j的jar包。 单池调用方式为Connection conn = R2PoolUtil.getStaticPool().getConnection(); conn用完后必须关闭,不然池中连接会被用完(原理:关闭conn时放回池中)。 ...
import org.apache.log4j.Logger; public class DBConnection { /** * 获得与数据库的连接 * * @param path * @return Connection */ public static Connection getConn(String classDriver, String ...
本包需要用到log4j,请在调用时确保存在log4j的jar包。 单池调用方式为Connection conn = R2PoolUtil.getStaticPool().getConnection(); conn用完后必须关闭,不然池中连接会被用完(原理:关闭conn时放回池中)...
本包需要用到log4j,请在调用时确保存在log4j的jar包。 单池调用方式为Connection conn = R2PoolUtil.getStaticPool().getConnection(); conn用完后必须关闭,不然池中连接会被用完(原理:关闭conn时放回池中)。...
本项目为java EE 课程实训项目(assetmanager),无商业价值,实现在控制台下的个人资产管理,技术上涉及log4j、数据库连接池、面向接口编程、事务、项目分层与之前所学习课程内容,重点要求学员掌握数据库连接池、...
本包需要用到log4j,请在调用时确保存在log4j的jar包。 单池调用方式为Connection conn = R2PoolUtil.getStaticPool().getConnection(); conn用完后必须关闭,不然池中连接会被用完(原理:关闭conn时放回池中)。...
common-2.1.0.jar,hive-jdbc-0.13.1.jar,hive-service-1.1.0.jar,httpclient-4.5.3.jar,httpcore-4.4.6.jar,libthrift-0.9.2.jar,log4j-1.2.17.jar,slf4j-api-1.5.0.jar,slf4j-log4j12-1.5.0.jar等jar包
本包需要用到log4j,请在调用时确保存在log4j的jar包。 单池调用方式为Connection conn = R2PoolUtil.getStaticPool().getConnection(); conn用完后必须关闭,不然池中连接会被用完(原理:关闭conn时放回池中)。 ...
可用于数据库客户端连接、FineReport 等报表工具连接 包含 Jar 包列表: 01、hadoop-common-3.0.0-cdh6.3.1.jar 02、hive-exec-2.1.1-cdh6.3.1.jar 03、hive-jdbc-2.1.1-cdh6.3.1.jar 04、hive-jdbc-2.1.1-cdh6.3.1-...
一个简单的Java JDBC示例,属性文件读取,Log4j配置