LOGback设置SQL参数打印

来源:互联网 发布:ios蜂窝移动数据应用 编辑:程序博客网 时间:2024/06/17 21:31

一.hibernate中设置SQL参数打印:

(主要是第一句)

<logger name="org.hibernate.type.descriptor.sql.BasicBinder"  level="TRACE" />  

<logger name="org.hibernate.type.descriptor.sql.BasicExtractor"  level="DEBUG" />  
<logger name="org.hibernate.SQL" level="DEBUG" />
 <logger name="org.hibernate.type" level="INFO" />
<logger name="org.hibernate.engine.QueryParameters" level="DEBUG" />  

 <logger name="org.hibernate.engine.query.HQLQueryPlan" level="DEBUG" />  


二.mybatis中设置SQL参数打印

第一种方法:(1)在sqlMapConfig.xml文件中,增加日志头部<setting name="logPrefix" value="dao."/>  

                 (2)在logback.xml中,增加<logger name="dao" level="debug" additivity="false">
                                                             <appender-ref ref="debug" />
                                                       </logger>

第二种方法:在logback.xml中,增加<logger name="com.ycdz.mapper" level="debug" additivity="false">
                                                    <appender-ref ref="debug" />
                                               </logger>

                   打印所有的mapper类sql语句

 

说明:(1)不管是在控制台打印,还是输出到日志文件中,level一定要是debug

        (2)第一种方法中的头部dao.,记得要加.    要与<logger name="dao" 中name一致。。。为什么要加.?

           因为<logger name="dao" level="debug" additivity="false">意思是:为所有开头为dao的类打印sql语句,加了.之后,所有mapper类名称变成dao.com.ycdz.mapper.xx,不加.就变成daocom.ycdz.mapper.xx就对应不上了(原因猜的,表述有问题,)

        (3)第一种和第二种方法原理上应该一致的,我猜的,虽然没有研究。


原创粉丝点击