首页 新闻 会员 周边 捐助

mybatis在插入时,返回主键类型被自动强转为Long

0
悬赏园豆:10 [已解决问题] 解决于 2018-04-28 18:12
 重大发现,研究了一个下午

发现,如果调用dao插入操作时,返回自增主键到对象中id属性中时,id为Integer类型,返回的值却是被强行赋值成Long,并且,因为值是Long,本身却是Integer,所以不能进行任何对于该值的操作,否则都会报java.lang.Long cannot be cast to java.lang.Integer,而在mapping文件中,将插入语句返回的自增id映射在对象的其他成员,类型也为Integer时,就不会被强转,我现在想把对象的主键id使用Integer类型,但取出来时又不能使用,求大神赐招
不说,的主页 不说, | 初学一级 | 园豆:193
提问于:2018-04-28 01:24

经过测试 3.4.0以上的mybatis依赖不会出现,继承父类 ,填入自定义泛型填入后,赋值id字段后,执行insert语句时,取回的自增id被强制转Long的问题了
3.2.8是及以下应该是有问题的目前

不说, 6年前
< >
分享
最佳答案
0

实体类,mybatis,数据库的类型保持一致就行了

就算像你说的,把long强转成int也可以啊

收获园豆:10
小光 | 小虾三级 |园豆:1766 | 2018-04-28 09:19
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册