Log4J写入到SQL SERVER数据库中, 单引号错误解决办法
来源:互联网 发布:淘宝服装店铺名称 编辑:程序博客网 时间:2024/05/21 21:37
Log4j之重写JDBCAppender
新建类:MyLoggingEvent , 来转换单引号
/** * */package com.hr.core;import org.apache.log4j.Category;import org.apache.log4j.Priority;import org.apache.log4j.spi.LoggingEvent;/** * @author zhong * */public class MyLoggingEvent extends LoggingEvent { private static final long serialVersionUID = -1405129465403337629L; public MyLoggingEvent(String fqnOfCategoryClass, Category logger, Priority level, Object message, Throwable throwable) { super(fqnOfCategoryClass, logger, level, message, throwable); // TODO Auto-generated constructor stub } public String getThreadName() { // TODO Auto-generated method stub String thrdName=super.getThreadName(); if(thrdName.indexOf("'")!=-1){ thrdName=thrdName.replaceAll("'", "''"); } return thrdName; } public String getRenderedMessage() { String msg=super.getRenderedMessage(); if(msg.indexOf("'")!=-1){ msg=msg.replaceAll("'", "''"); } return msg; }}
新建类:MyJDBCAppender , 来解发重写方法的调用
/** * */package com.hr.core;import org.apache.log4j.Category;import org.apache.log4j.Priority;import org.apache.log4j.jdbc.JDBCAppender;import org.apache.log4j.spi.LoggingEvent;/** * @author zhong * */public class MyJDBCAppender extends JDBCAppender { protected String getLogStatement(LoggingEvent event) { String fqnOfCategoryClass=event.fqnOfCategoryClass; Category logger=Category.getRoot(); Priority level=event.level; Object message=event.getMessage(); Throwable throwable=null; MyLoggingEvent bEvent=new MyLoggingEvent(fqnOfCategoryClass,logger,level,message,throwable); return super.getLogStatement(bEvent); }}
附: log4j.properties 配置
log4j.rootCategory=INFO,A3,Rlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%d{yyyy MMM dd HH:mm:ss,SSS}%m%nlog4j.logger.Java.sql.Connection=debuglog4j.logger.java.sql.Statement=debuglog4j.logger.java.sql.PreparedStatement=debug,stdout,logfile,A3 log4j.appender.R=org.apache.log4j.RollingFileAppenderlog4j.appender.R.File=${catalina.home}/logs/hr_log.loglog4j.appender.R.MaxFileSize=1024KBlog4j.appender.R.MaxBackupIndex=10log4j.appender.R.layout=org.apache.log4j.PatternLayoutlog4j.appender.R.layout.ConversionPattern=%d-[HL] %p %t %c - %m%n#log4j.appender.A3=com.hr.core.MyJDBCAppenderlog4j.appender.A3.URL=jdbc\:sqlserver\://localhost\:1433;DatabaseName\=zhaochi_1log4j.appender.A3.driver=com.microsoft.sqlserver.jdbc.SQLServerDriverlog4j.appender.A3.user=salog4j.appender.A3.password=pwterp#log4j.appender.A3.layout=org.apache.log4j.PatternLayoutlog4j.appender.A3.layout.ConversionPattern=INSERT INTO log4j(createDate,thread,grade,class,message) values('%d','%t','%-5p','%c','%m')
0 0
- Log4J写入到SQL SERVER数据库中, 单引号错误解决办法
- Log4J写入到SQL SERVER数据库中
- Log4J写入到数据库中
- sql server 附加数据库 错误5123 解决办法
- SQL server 中 SQL 单引号转义问题
- sql server数据库 写入图片
- .net 对sql数据库操作中会出现单引号'无法insert到数据库中
- Sql server 数据库中,纯SQL语句查询、执行 单引号问题。
- SQL Server 连接到服务器 错误233的解决办法
- 连接到 SQL Server 2005 时无法打开到 SQL Server 的连接的错误解决办法
- Sql Server 2008 数据库附加失败提示9004错误解决办法
- SQL Server 附加数据库失败的解决办法 (3415错误)
- Sql Server 2008 数据库附加失败提示9004错误解决办法
- SQL Server 附加数据库失败的解决办法 (3415错误)
- excel导入到sql server数据库中
- 异常:无法连接到 SQL Server 数据库。-解决办法
- log4j 无法将日志写入到文件里的解决办法
- sql server中sql语句中单引号转义
- 【SAP HANA】SAP HANA开篇
- Struts2 基础
- Linux下tomcat端口映射为80
- 二维数组---矩阵转置
- primary key与unique的区别 及 insert方法的一些说明注意
- Log4J写入到SQL SERVER数据库中, 单引号错误解决办法
- 遍历磁盘中7天内修改过的文件,按照从新到旧打印
- OpenCV3.1实现matlab中strel('disk', n)函数
- ReactiveX(rxjava)学习笔记
- 如何正确获得Android内外SD卡路径
- 深入理解JAVA国际化
- web项目框架搭建
- 设计模式之单例模式(Singleton)
- Mediaproxy 与 Rtpproxy