博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
扩展Log4j支持JNDI数据源
阅读量:6156 次
发布时间:2019-06-21

本文共 1536 字,大约阅读时间需要 5 分钟。

log4j.properties配置文件:

log4j.rootLogger=INFO,db#使用log4j扩展支持JNDI数据源log4j.appender.db=com.qdgswx.log4j.ds.JndiDSAppenderlog4j.appender.db.jndiName=wstjndilog4j.appender.db.BufferSize=1log4j.appender.db.sql=insert into wx_log (openid,nsrsbh,logtype,classname,methodname,oprtime,loglevel,content) values ('%X{openid}','%X{nsrsbh}','%X{logtype}','%C','%M','%d{yyyy-MM-dd HH:mm:ss}','%p','%m')  log4j.appender.db.layout=org.apache.log4j.PatternLayout

扩展类JndiDSAppender.java

public class JndiDSAppender extends JDBCAppender {    protected DataSource ds = null;    protected String jndiName;    public void setJndiName(String jndiName) {        this.jndiName = jndiName;    }        protected synchronized void init() {        if (ds != null) {            return;        }        try {            InitialContext context = new InitialContext();            ds = (DataSource) context.lookup(jndiName);        } catch (NamingException e) {            this.errorHandler.error(e.getMessage());        }    }         @Override      protected Connection getConnection() throws SQLException {          while(ds==null){            init();        }                Connection conn = ds.getConnection();        conn.setAutoCommit(true);                return conn;    }        @Override      protected void closeConnection(Connection conn) {          try {              if(conn!=null&&!conn.isClosed()) {                conn.close();              }         } catch (SQLException e) {              this.errorHandler.error(e.getMessage());          }      }  }

 

转载地址:http://oiifa.baihongyu.com/

你可能感兴趣的文章
PC远程调试移动设备
查看>>
与TCP/IP协议的初次见面(一)
查看>>
iOS开发系列文章(持续更新……)
查看>>
HttpURLConnection与 HttpClient 区别/性能测试对比
查看>>
DHCP Option 60 的理解
查看>>
Android SDKVersion 参数列表
查看>>
Crontab中shell每分钟执行一次HDFS文件上传不执行的解决方案
查看>>
ios NSAttributedString 具体解释
查看>>
debian 安装 php 遇到的问题解决
查看>>
BDB (Berkeley DB)数据库简单介绍(转载)
查看>>
Java Swing 探索(一)LayoutManager
查看>>
数据库原理 知识点总结
查看>>
3D数学读书笔记——矩阵进阶
查看>>
C柔性数组
查看>>
Python 类继承,__bases__, __mro__, super
查看>>
(十五)WebGIS中平移功能的设计和实现
查看>>
matlab练习程序(三阶张量T-QR分解)
查看>>
百钱买百鸡
查看>>
EditText图文混排
查看>>
Mysql,ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'
查看>>