zoukankan      html  css  js  c++  java
  • log4j+数据库的使用

    这个内容比较全面、

    http://www.cnblogs.com/suman/archive/2010/10/23/1858864.html

    这个内容应该算为扩展

    http://blog.sina.com.cn/s/blog_4e4dd5570100qp0v.html

    上面两个结合就可以使用Log4j,具休源码我再发好地址

    Log.java

    package cn.ssh.entity;

    import javax.persistence.Entity;

    import javax.persistence.Id;
    import javax.persistence.GeneratedValue;
    import javax.persistence.Table;

    @Entity
    @Table(name="log")
    public class Log {
    private int id;
    private String log_date;
    private String log_message;
    private String user;

    @Id @GeneratedValue
    public int getId() {
    return id;
    }
    public void setId(int id) {
    this.id = id;
    }
    public String getLog_date() {
    return log_date;
    }
    public void setLog_date(String log_date) {
    this.log_date = log_date;
    }
    public String getLog_message() {
    return log_message;
    }
    public void setLog_message(String log_message) {
    this.log_message = log_message;
    }
    public String getUser() {
    return user;
    }
    public void setUser(String user) {
    this.user = user;
    }

    }

    log4j.properties


    log4j.rootLogger=info,DATABASE
    ##控制台输出
    log4j.appender.A1=org.apache.log4j.ConsoleAppender
    log4j.appender.A1.layout=org.apache.log4j.PatternLayout
    log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n

    log4j.appender.R=org.apache.log4j.RollingFileAppender
    log4j.appender.R.File = E:\temp\logging.log
    log4j.appender.R.MaxFileSize=500KB
    log4j.appender.R.MaxBackupIndex=1
    log4j.appender.R.layout=org.apache.log4j.PatternLayout
    log4j.appender.R.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n

    log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender
    log4j.appender.DATABASE.BufferSize = 1
    log4j.appender.DATABASE.Threshold=DEBUG
    log4j.appender.DATABASE.URL=jdbc:mysql://localhost:3306/ssh?useUnicode=true&characterEncoding=UTF-8
    log4j.appender.DATABASE.driver=com.mysql.jdbc.Driver
    log4j.appender.DATABASE.user=root
    log4j.appender.DATABASE.password=123456
    log4j.appender.DATABASE.sql=INSERT INTO log (log_date,log_message,user) values ("%d{yyyy-MM-dd HH:mm:ss,SSS}","%m,%d{SSS}","%X{user}")
    log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout
    log4j.logger.org.hibernate=debug
    log4j.logger.org.hibernate.type=debug

    类中的代码:

    private static Log logger = LogFactory.getLog(LoginAction.class); //LoginAction.class 是一个类名字
    MDC.put("user", "zhangpengfei");//插入的 user %X{user}
    logger.info ("用户登陆") ;//插入的 log_message %m


    在使用中遇到的两个问题:

    1.出现中文乱码 ??

    解决方法:log4j.appender.DATABASE.URL=jdbc:mysql://localhost:3306/ssh?useUnicode=true&characterEncoding=UTF-8 里面的 & 和xml里面的 &asm; 相同

    2,Data truncation: Data too long for column 'log_message' at row 1

    解决方法:'log_message'在数据库里设成 longText

    其中有个错误不太一样,是你们数据库编码不正确,我数据库做的标准,没出错误,上面是操作这个过程中出现的错误,希望能帮到大家,我用的MYsql数据库

     

    宝贝网址:

  • 相关阅读:
    【算法研究】排序算法
    20121031 学习心得与体会
    循环有序数组查找(log(n))
    XmlDocument创建XML文档
    GCC地址对齐的2个方法
    打印getaddrinfo()返回的地址信息
    Java单例模式
    二叉搜索树的例子BST
    XmlTextWriter创建XML文档
    XmlDocument读取XML文档
  • 原文地址:https://www.cnblogs.com/W203654/p/2313340.html
Copyright © 2011-2022 走看看