mybatis查询返回空,sql数据库执行有数据

需要编写一个统计功能,在Navicat Premium里调整好sql
然后编写后台代码 controller – service -serviceImpl -dao
在serviceImpl 上添加 @Service 注解
在dao 添加 @Repository注解
在xml中resultMap对应信息
在select中 设置 parameterType 和 resultMap
然后执行程序,发现在页面没有返回数据

 

 

 

 

打断点查看,发现 serviceImpl里的list返回的为[]
但是将这个sql复制到Navicat Premium 是可以查找到对应信息的

 

 

 

检查日志 发现 控制台报了个 关于 mysql-connector-java-6.0.5的错误,然后将 mysql-connector-java-6.0.5.jar 更改为 mysql-connector-java-5.1.26.jar
再次测试发现该错误消失,但是还是查不到数据

 

 

 

日志中有几个c3p0的错误,然后将c3p0替换为 druid数据源
再次检查,发现该错误消失,但是还是查看 不到数据

 

 

 

日志中还有几个其他的提示信息例如 was not registered for synchronization because synchronization is not active等。

 

 

最后测试时发现,更改sql中的某些字段,然后页面突然就能显示数据了
更改的内容为 将name like ‘%XXX%’ 条件注释掉,
但是奇怪的是 另外一个表里 有个一模一样的name like ‘%XXX%’条件,但是这个却不用注释,对页面的展示没有影响

 

 

 

猜测可能与编码格式有关,于是测试
原 jdbc.url=jdbc:mysql:/XX.XX.XX.XX:3306/XXX?serverTimezone=UTC
更改为 jdbc.url=jdbc:mysql://XX.XX.XX.XX:3306/XXX?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
再进行测试,发现页面能正常展示了。

 

你可能感兴趣的:(javaWeb,mybatis,查询,数据为空)