问题描述
- 关于mybatis不执行sql的问题
-
select
TOM_ID
from
TEST
where 1=1AND HOST_IP = #{ipAddr}
日志输出:
11:04:02.942 [http-bio-8080-exec-5] DEBUG org.mybatis.spring.SqlSessionUtils - Creating a new SqlSession
11:04:02.942 [http-bio-8080-exec-5] DEBUG org.mybatis.spring.SqlSessionUtils - SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@7ecc30a4] was not registered for synchronization because synchronization is not active
11:04:02.942 [http-bio-8080-exec-5] DEBUG org.mybatis.spring.SqlSessionUtils - Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@7ecc30a4]这个查询没有返回,也没有报错,执行到这里程序就不走了, 其他查询是可以成功的,也可以打印出sql语句,但是这个查询就是不行。。
解决方案
select
TOM_ID
from
TOM_SERVER_CFG
where 1=1
AND HOST_IP = #{ipAddr}
这是映射的配置
解决方案二:
myBatis的SQL注入问题
myBatis的SQL注入问题
MyBatis直接执行SQL的工具SqlMapper
解决方案三:
because synchronization is not active
这个又不是因为SQL错了
解决方案四:
日志就打印这三句 , 所以不知道哪里错了 其他的都有配置
<configuration>
<mappers>
<mapper resource="com/asiainfo/cmserver/intf/map/A.xml" />
</mappers>
</configuration>
<bean id="aDAO" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value=".com.ddd.aDAO" />
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>