需要以下jar包:

---log4j

commons-loggin-1.1.1.jar

log4j-1.2.16.jar

---mysql

mysql-connector-java-5.1.15-bin.jar

---log4j.properties配置内容

log4j.rootLogger=INFO,DATABASE

#JDBC Appender

log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout #与数据库建立连接
log4j.appender.DATABASE.URL=jdbc:mysql://localhost:/test
log4j.appender.DATABASE.driver=com.mysql.jdbc.Driver
log4j.appender.DATABASE.user=root
log4j.appender.DATABASE.password=
log4j.appender.DATABASE.sql=insert into wlog(class_name,method_name,create_time,log_level,log_info,log_type) values('%C', '%M', '%d{yyyy-MM-dd HH:mm:ss}', '%p', '%m', '%X{type}')

---表结构

CREATE TABLE wlog (
id INT NOT NULL AUTO_INCREMENT,
class_name VARCHAR(100) NULL COMMENT '类名',
method_name VARCHAR(100) NULL COMMENT '方法名',
create_time VARCHAR(45) NULL COMMENT '产生时间',
log_level VARCHAR(45) NULL COMMENT '日志级别',
log_info VARCHAR(45) NULL COMMENT '日志信息',
log_type INT NULL COMMENT '日志类别',
PRIMARY KEY (id));

--Log4jtest.java

    private static final Logger lg = Logger.getLogger(Log4jtest.class);

    public static void main(String[] args) {
MDC.put("type", "1"); lg.error("Log4jtes错误信息");
lg.warn("Log4jtest警告信息");
lg.info("Log4jtest信息");
}

--result

mysql> select * from wlog;
+----+------------------------+-------------+---------------------+-----------+-----------------------+----------+
| id | class_name | method_name | create_time | log_level | log_info | log_type |
+----+------------------------+-------------+---------------------+-----------+-----------------------+----------+
| | com.yan.test.Log4jtest | main | -- :: | ERROR | Log4jtes错误信息 | |
| | com.yan.test.Log4jtest | main | -- :: | WARN | Log4jtest警告信息 | |
| | com.yan.test.Log4jtest | main | -- :: | INFO | Log4jtest信息 | |
+----+------------------------+-------------+---------------------+-----------+-----------------------+----------+
rows in set (0.00 sec)

log4j 将日志记录到数据库的更多相关文章

  1. 也用 Log4Net 之将日志记录到数据库的后台实现 (二)

    也用 Log4Net 之将日志记录到数据库的后台实现 (二)  大家下午好,昨天讲了配置,今天我们讲讲后台实现,在完成了后台实现后,我们才能真正意义上的解决把自定义属性字段值录入到数据库中. 在开写之 ...

  2. 也用 Log4Net 之将日志记录到数据库的配置 (一)

    也用 Log4Net  之将日志记录到数据库的配置 (一) 前段时间我一直想做一个通用一点的日志记录系统,可以便于不同的业务组调用进行日志记录及分析.本来打算着自己下手写一个,后面发现各业务组可能会需 ...

  3. java注解日志记录到数据库

    1. pom添加依赖包 <!--添加aop依赖--><dependency> <groupId>org.springframework.boot</group ...

  4. Log4Net 之将日志记录到数据库的后台实现 (二)

    原文:Log4Net 之将日志记录到数据库的后台实现 (二) 大家下午好,昨天讲了配置,今天我们讲讲后台实现,在完成了后台实现后,我们才能真正意义上的解决把自定义属性字段值录入到数据库中. 在开写之前 ...

  5. Log4Net 之将日志记录到数据库的配置 (一)

    原文:Log4Net 之将日志记录到数据库的配置 (一) 前段时间我一直想做一个通用一点的日志记录系统,可以便于不同的业务组调用进行日志记录及分析.本来打算着自己下手写一个,后面发现各业务组可能会需要 ...

  6. log4j教程 12、日志记录到数据库

    log4j API提供 org.apache.log4j.jdbc.JDBCAppender 对象,它能够将日志信息在指定的数据库. JDBCAppender 配置: Property 描述 buff ...

  7. springmvc+log4j操作日志记录,详细配置

    没有接触过的,先了解一下:log4j教程 部分内容来:log4j教程 感谢! 需要导入包: log包:log4j-12.17.jar 第一步:web.xml配置 <!-- log4j配置,文件路 ...

  8. Log4j(一):Log4j将日志信息写入数据库

    前言 为了监听一些数据的采集等功能,需要随时监听设备的状态,所以需要运行的时候将日志打入到数据库中. 正文 第一步: 首先是jar包,由于我使用的是springboot,所以,在springboot- ...

  9. log4j日志记录到数据库

    log4j API提供 org.apache.log4j.jdbc.JDBCAppender 对象,它能够将日志信息在指定的数据库. JDBCAppender 配置: Property 描述 buff ...

随机推荐

  1. BZOJ 2324 营救皮卡丘

    http://www.lydsy.com/JudgeOnline/problem.php?id=2324 思路:最小费用最大流 考虑设数组d[k][i][j],代表只用前k个城市,i到j的最短路 然后 ...

  2. CS找工作好文章

    我的美国CS面试经验分享 -- 转载 怎样花两年时间去面试一个人 上面列出了一些比较好的书单 cs土硕找工作总结(二) 笔试面试准备http://blog.renren.com/blog/221227 ...

  3. 索引列上的统计 <第一篇>

    一.索引在查询优化中的角色 SQL Server的查询优化器是基于开销的优化器.它通过确认选择性.数据的唯一性以及过滤数据(通过WHERE或JOIN子句)所使用的列来决定最佳的数据访问机制.统计与索引 ...

  4. cmake编译Debug和Release

    CMake 中有一个变量 CMAKE_BUILD_TYPE ,可以的取值是 Debug Release Rel WithDebInfo 和 MinSizeRel.当这个变量值为 Debug 的时候,C ...

  5. 返回本机的外网ip地址

     ;             );             string ip = tempip.Replace("]", "").Replace(" ...

  6. 精确覆盖DLX算法模板

    代码 struct DLX { int n,id; int L[maxn],R[maxn],U[maxn],D[maxn]; ]; ) //传列长 { n=nn; ;i<=n;i++) U[i] ...

  7. java 实现排序

    package com.cjs.sort; /** * 此类用来提供针对整数的各种排序算法 * * @author S * @version 1.0 */ public class MySort { ...

  8. Mysql数据库乱码与编码问题筛查

    最近接连遇到数据库编码问题,让你的系统本来像个美丽的姑娘却忽然发现她不识字一样难受,其实很多时候是编码的问题,而mysql(特别地)设计编码的地方很多,在这里做一个筛查: 1 mysql编码 用下面的 ...

  9. for添加用户

    #!/bin/bash #接受一个参数: #add: 添加用户user1..user10 #del: 删除用户user1..user10 #其它:退出 #定义变量 ADD=add DEL=del #判 ...

  10. Runtime运行时机制

    Runtime 又叫运行时,是一套底层的 C 语言 API,其为 iOS 内部的核心之一,我们平时编写的 OC 代码,底层都是基于它来实现的 我们需要了解的是 Objective-C 是一门动态语言, ...