一、IBatis.net输出SQL语句到控制台
输出IBatis.net生成的SQL语句到控制台,能够方便调试。
如果要想输出IBatis.net的SQL语句到控制台,那么只需要做如下配置即可:
<configSections> <!-- 输出IBatis.net执行的SQL语句到控制台 --> <sectionGroup name="iBATIS"> <section name="logging" type="IBatisNet.Common.Logging.ConfigurationSectionHandler, IBatisNet.Common" /> </sectionGroup> </configSections> <iBATIS> <logging> <logFactoryAdapter type="IBatisNet.Common.Logging.Impl.TraceLoggerFA, IBatisNet.Common"> <arg key="showLogName" value="true" /> <arg key="showDataTime" value="true" /> <arg key="level" value="ALL" /> <arg key="dateTimeFormat" value="yyyy/MM/dd HH:mm:ss:SSS" /> </logFactoryAdapter> </logging> </iBATIS>
那么显示结果如下:
二、IBatis.net输出SQL语句到文件
另外,利用log4net,能够很轻易地把SQL语句生成到文件上。
只需做如下配置:
<configSections> <!-- 输出IBatis.net执行的SQL语句 --> <sectionGroup name="iBATIS"> <section name="logging" type="IBatisNet.Common.Logging.ConfigurationSectionHandler, IBatisNet.Common" /> </sectionGroup> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> </configSections> <iBATIS> <logging> <logFactoryAdapter type="IBatisNet.Common.Logging.Impl.Log4NetLoggerFA, IBatisNet.Common.Logging.Log4Net"> <arg key="configType" value="inline" /> </logFactoryAdapter> </logging> </iBATIS> <log4net> <!-- 定义输出的附加信息,大小,输出到的文件等等 --> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <param name="File" value="f:\log.txt" /> <param name="AppendToFile" value="true" /> <param name="MaxSizeRollBackups" value="2" /> <param name="MaximumFileSize" value="100KB" /> <param name="RollingStyle" value="Size" /> <param name="StaticLogFileName" value="true" /> <layout type="log4net.Layout.PatternLayout"> <param name="Header" value="[Header]\r\n" /> <param name="Footer" value="[Footer]\r\n" /> <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" /> </layout> </appender> <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender"> <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] <%X{auth}> - %m%n" /> </layout> </appender> <!-- 设置错误的级别以及附加信息 --> <root> <level value="DEBUG" /> <appender-ref ref="RollingLogFileAppender" /> <appender-ref ref="ConsoleAppender" /> </root> <!-- 只是打印错误信息的级别 --> <logger name="IBatisNet.DataMapper.Configuration.Cache.CacheModel"> <level value="DEBUG" /> </logger> <logger name="IBatisNet.DataMapper.Configuration.Statements.PreparedStatementFactory"> <level value="DEBUG" /> </logger> <logger name="IBatisNet.DataMapper.LazyLoadList"> <level value="DEBUG" /> </logger> <logger name="IBatisNet.DataAccess.DaoSession"> <level value="DEBUG" /> </logger> <logger name="IBatisNet.DataMapper.SqlMapSession"> <level value="DEBUG" /> </logger> <logger name="IBatisNet.Common.Transaction.TransactionScope"> <level value="DEBUG" /> </logger> <logger name="IBatisNet.DataAccess.Configuration.DaoProxy"> <level value="DEBUG" /> </logger> </log4net>
在F盘生成文件如下: