在我的项目中,我有
<bean id="ABCSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="ABCDataSource" />
<property name="mapperLocations">
<list>
<value>classpath:com/myco/dao/XYZMapper.xml</value>
</list>
</property>
<bean>
和
log4j.logger.java.sql.Connection=debug, stdout, abclog
log4j.logger.java.sql.PreparedStatement=debug, stdout, abclog
log4j.logger.java.sql=debug, stdout, abclog
log4j.logger.org.mybatis=debug, stdout, abclog
log4j.logger.org.apache.ibatis=debug, stdout, abclog
我在日志中运行应用程序时看不到SQL查询想知道我缺少了什么
我看到这个帖子how to configure log4j for Mybatis to print my SQL,建议更改mybatis类的配置,但不确定如何使用spring SqlSessionFactoryBean
6条答案
按热度按时间8aqjt8rx1#
用最简单的方式配置测试并查看日志。然后自定义输出(例如文件、级别)。
nom7f22z2#
尝试将所有必要的行添加到配置中。
下面是应该可以工作的示例:
erhoui1w3#
两种实现方式:
1.编辑logback.xml:
1.application.properties
mapperPackageName
是Mapper类所在的包。wqsoz72f4#
引用how to configure logback for Mybatis to print my SQL的一个答案,我不确定这是否完全适用于您。它提供了用于日志记录的Spring配置。这种方法对我很有效。
要记录特定mybatisMap器的SQL语句,请使用完全限定的Map器名称设置记录器的DEBUG(TRACE以查看查询参数和结果)级别
如果所有Map器中的所有SQL语句都在同一个程序包中,则可以记录这些语句,如下所示
给予一试,如果问题还在的话。祝你好运!
ycggw6v25#
您可以通过mybatis-config.xml为Mybatis添加日志记录。
像这样添加log4j:
mybatis-config.xml文件
然后,在www.example.com中log4j.properties,添加要记录的类:
SQL语句在DEBUG级别记录,因此将输出设置为DEBUG:
有关详细信息,请参阅documentation。
uz75evzq6#
另一个快捷方式是在www.example.com文件中将mybatisMap器的调试级别设置为trueapplication.properties:
在控制台或日志文件中打印的示例日志: