mybatis选择日志的顺序
1 SLF4J
2 Apache Commons Logging
3 Log4j 2
4 Log4j
5 JDK logging
可以在web.xml里配置
<!-- 加载log4j配置文件 -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:log4j.properties</param-value>
<!-- <param-value>/WEB-INF/log4j.xml</param-value> -->
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
使lo4g为最优先
在使用过程中遇到sql不打印的问题,结果是debug模式下没有开启debug级别的打印,log4j.rootLogger=DEBUG,INFO,Console,File 解决
然后sql语句有了,但是没有结果集,在mybatis-config.xml里配置
<settings>
<!-- 打印查询语句 -->
<setting name="logImpl" value="STDOUT_LOGGING" />
</settings>
在spring-mybatis.xml里
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!-- 制定Mybatis的配置 -->
<property name="configLocation" value="classpath:mybatis-config.xml" />
<!-- 自动扫描mapping.xml文件 -->
<property name="mapperLocations" value="classpath:com/manage/mapping/*.xml"></property>
</bean>
结果还是不行,发现项目有一个错误是validator的,在pom引入
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.2.4.Final</version>
</dependency>
重启项目,不报错,sql结果集也有了