- 问题:
- 1.可能的解决方法一
- 2.可能的解决方法二
- 3.可能的解决方法三
- 4.可能的解决方法四
- 5.可能的解决方法五(我自己问题的解决方案)
- 总结
问题:
刚发现这个问题的时候还是在进行插入数据操作的时候,发现报错。
报错的原因是因为使用的版本为2.2.4.RELEASE,并不支持servise.list()这些自带的方法
然后写sql语句,写完后发现没有数据依然报错,最后单独打印出来,原来没有数据
这让我感觉非常奇怪,我的sql就简简单单的select * from 表,这没道理呀
经过我多次试错,终于知道了原因
解决方法:
原因
是mybatis的字段匹配不上
,比如我的数据库是love_you,那我java中就必须写love_you,写loveYou就不行
1.可能的解决方法一
重启,清除缓存,清除依赖,重新构建项目(这种情况还是比较少的,不过万一呢)
2.可能的解决方法二
检查你的xml文件里面的映射是否正确配置了别名,检查你的sql语句是否正确
3.可能的解决方法三
配置你的mybaits路径,可能mybatis扫描不到你的 映射(一般都是默认,多数据源可能需要配置一下)
mybatis:
mapper-locations:
datasource1: classpath:mapper/datasource1/*.xml
datasource2: classpath:mapper/datasource2/*.xml
4.可能的解决方法四
在你的yml文件中添加将数据下划线转化为驼峰的配置
mybatis:
configuration:
map-underscore-to-camel-case: true
或者在mybatis的xml文件中添加如下配置
<configuration>
<setting name="mapUnderscoreToCamelCase" value="true"/>
</configuration>
5.可能的解决方法五(我自己问题的解决方案)
可能你自己写了另外的配置文件,java文件的那种,就很懵逼,我配置不写在里面就没用呗
以下是将数据下划线转化为驼峰的配置,你可以写在你配置的mybatis扫描路径的下方
// 设置MyBatis配置
org.apache.ibatis.session.Configuration configuration = new org.apache.ibatis.session.Configuration();
configuration.setMapUnderscoreToCamelCase(true);
bean.setConfiguration(configuration);
成功截图:
总结
以上只是我解决过程中尝试的几种方法,不一定能解决问题,不过可以作为一些思路来参考。
又:总是碰到奇奇怪怪的问题。。。。神戳戳的