zoukankan      html  css  js  c++  java
  • log4j学习日记-写入数据库

    1、首先创建日志数据库 
    用的是MySQL 
    CREATE TABLE `td_log` ( 
      `lid` int(11) NOT NULL AUTO_INCREMENT, 
      `lusername` varchar(20) DEFAULT NULL, 
      `lmessage` varchar(200) DEFAULT NULL, 
      `lstartdate` varchar(30) DEFAULT NULL, 
      `level` varchar(20) DEFAULT NULL, 
      PRIMARY KEY (`lid`) 


    2、配置文件中的部分内容: 
    log4j.rootLogger=info,jdbc 
    #直接使用log4j包中的文件 
    log4j.appender.jdbc=org.apache.log4j.jdbc.JDBCAppender 
    #与数据库建立连接 
    log4j.appender.jdbc.URL=jdbc:mysql://localhost:3306/test 
    log4j.appender.jdbc.driver=com.mysql.jdbc.Driver 
    log4j.appender.jdbc.user=root 
    log4j.appender.jdbc.password=admin 
    log4j.appender.jdbc.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p %t %c{2}:%L - %m%n 

    #指定要插入数据库的格式,与数据库字段对应,与一般SQL区别不大,只是加上了log4j的一些配置参数而已。 
    log4j.appender.jdbc.sql=insert into td_log(lusername, lstartdate, level, lmessage) values ('%X{lusername}','%d{yyyy-MM-dd HH:mm:ss}','%p','%m') 

    3、日志工具类源码如下 
    /** 
    * 系统日志辅助类 
    * @author 
    * @date  */ 
    public class LogUtil{ 

    /** 
      * 崩溃级别 
      * @param lusername 
      * @param message 
      */ 
    public static void fatal(Logger logger, String lusername,String message){ 
      MDC.put("lusername", lusername); 
      logger.fatal(message);  


    /** 
      * 错误级别 
      * @param username 
      * @param message 
      */ 
    public static void error(Logger logger, String lusername,String message){ 
      MDC.put("lusername", lusername); 
      logger.error(message);  


    /** 
      * 错误级别 
      * @param username 
      * @param message 
      */ 
    public static void error(Logger logger, String lusername, Object message){ 
      MDC.put("lusername", lusername); 
      logger.error(message);  


    /** 
      * 消息级别 
      * @param logger 
      * @param username 
      * @param message 
      */ 
    public static void info(Logger logger, String lusername,String message){ 
      MDC.put("lusername", lusername); 
      logger.info(message);  


    /** 
      * 警告级别 
      * @param username 
      * @param message 
      */ 
    public static void warn(Logger logger, String lusername,String message){ 
      MDC.put("lusername", lusername); 
      logger.warn(message);  


    /** 
      * 调试级别 
      * @param username 
      * @param message 
      */ 
    public static void debug(Logger logger, String lusername,String message){ 
      MDC.put("lusername", lusername); 
      logger.debug(message);  



    4、客户端调用源码 
    public class test{ 
    private static Logger logger = Logger.getLogger(test.class); 

    public static void main(String[] args) { 
    LogUtil.info(logger, "wyw", "看看是否写入了数据库"); 


    }

  • 相关阅读:
    vijos 1379 字符串的展开
    BZOJ 4597 随机序列
    BZOJ 2303 方格染色
    BZOJ 2654 tree
    BZOJ 4198 荷马史诗
    BZOJ 1555 KD之死
    不重复数字
    Rails
    Train Problem I
    Key Set HDU
  • 原文地址:https://www.cnblogs.com/jiligalaer/p/4285430.html
Copyright © 2011-2022 走看看