标签:style blog class code java tar
目前mybatis for .net 可以支持对外的日志输出包括SQL语句和参数等信息,用于调试,目前支持的输出方式有三种
具体的mybatis的引用和使用方式不再本文的讨论范围
1.命令窗口的输出
命令窗口的输出比较乱,因为限于窗口的大小,SQL比较长的时候显示就比较乱了,具体的实现方式,是添加config文件,app.config或者web.config
第一步:添加应用程序配置文件
第二步:在configuration节点下添加如下节点
"iBATIS">
"logging" type="IBatisNet.Common.Logging.ConfigurationSectionHandler, IBatisNet.Common" />
"log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
"IBatisNet.Common.Logging.Impl.ConsoleOutLoggerFA, IBatisNet.Common">
"showLogName" value="true" />
"showDataTime" value="true" />
"level" value="ALL" />
"dateTimeFormat" value="yyyy/MM/dd HH:mm:ss:SSS" />
最后的app.config或者web.config 中完整配置如下
"1.0" encoding="utf-8" ?>
"iBATIS">
"logging" type="IBatisNet.Common.Logging.ConfigurationSectionHandler, IBatisNet.Common" />
"log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
"IBatisNet.Common.Logging.Impl.ConsoleOutLoggerFA, IBatisNet.Common">
"showLogName" value="true" />
"showDataTime" value="true" />
"level" value="ALL" />
"dateTimeFormat" value="yyyy/MM/dd HH:mm:ss:SSS" />
第三步:开始运行测试吧,在运行时候会出现命令窗口显示SQL和参数,效果如下 怎么样比较乱吧
2.使用log4net的格式输出到文本文件中
既然是使用log4net的方式肯定要引用mybatis中自带的IBatisNet.Common.Logging.Log4Net.dll,只需要引用就可以了,不需要在代码上特别写什么。
剩下的就是配置了 。因为使用log4net的格式输出日志。就牵涉到log4net的日志格式配置保存在那里的问题,由此引出了第三种方式,
和mybatis的节点一起写在引用程序保存在app.config或者web.config中是第二中方式。log4net
独立保存在另一个配置文件中是第三种方式。
具体的配置如下,保存在app.config或者web.config中
在configuration中添加如下配置:
"IBatisNet.Common.Logging.Impl.Log4NetLoggerFA, IBatisNet.Common.Logging.Log4Net">
"configType" value="inline" />
"FileAppender" type="log4net.Appender.FileAppender">
"log.txt" />
"true" />
"log4net.Layout.SimpleLayout" />
"ALL" />
ref ref="FileAppender" />
上面一部分mybatis的配置,下面的log4Net节点是log4Net的配置,可以自己写日子的格式
最后的app.config或者web.config 中完整配置如下
"1.0" encoding="utf-8" ?>
"iBATIS">
"logging" type="IBatisNet.Common.Logging.ConfigurationSectionHandler, IBatisNet.Common" />
"log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
"IBatisNet.Common.Logging.Impl.Log4NetLoggerFA, IBatisNet.Common.Logging.Log4Net">
"configType" value="inline" />
"FileAppender" type="log4net.Appender.FileAppender">
"log.txt" />
"true" />
"log4net.Layout.SimpleLayout" />
"ALL" />
ref ref="FileAppender" />
第三种方式 单独把log4Net的配置保存log4Net.config中( 推荐)
该方式和第二种差不多,只是把log4Net
的配置独立保存在另一个配置文件中了,在配置比较多的时候,又想对日志的格式有更细致的控制时,推荐采用该方式
具体的配置如下:
第一步: app.config或者web.config中的配置如下
"1.0" encoding="utf-8" ?>
"iBATIS">
"logging" type="IBatisNet.Common.Logging.ConfigurationSectionHandler, IBatisNet.Common" />
"log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
"IBatisNet.Common.Logging.Impl.Log4NetLoggerFA, IBatisNet.Common.Logging.Log4Net">
"configType" value="file-watch" />
"configFile" value="Log4Net.config"/>
第二步: log4Net.config 的配置如下,不想写出日志时可以把level的值设为 “ off
",配置是从其他的大神那拿来的,想要在深入了解的话可以看
http://blog.csdn.net/pfe_nova/article/details/12225349
"1.0"?>
"log4net"
type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
"DEBUG"/>
ref ref="RollingFileAppender"/>
"RollingFileAppender" type="log4net.Appender.RollingFileAppender">
"c:\Log\TestLog4net.TXT"/>
"log4net.Appender.FileAppender+MinimalLock"/>
"(yyyyMMdd)"/>
"true"/>
"Size"/>
"10"/>
"2MB"/>
"log4net.Layout.PatternLayout">
"%date [%t]%-5p %c - %m%n"/>
最后在目标位置会产生日志文件,快去尝试吧
最后有个问题mybatis应该可以在代码里面里面设置日志的级别,目前还没找到,只能通过log4Net 的level来决定是否输出日志,不太合理
有知道的,求告知
源码:http://files.cnblogs.com/Dunk/MyBatis.zip
Mybatis for .net 的日志输出,搜素材,soscw.com
Mybatis for .net 的日志输出
标签:style blog class code java tar
原文地址:http://www.cnblogs.com/Dunk/p/3714689.html