Mybatis查询时数据丢失的问题及解决

网友投稿 1916 2022-11-06

Mybatis查询时数据丢失的问题及解决

Mybatis查询时数据丢失的问题及解决

目录Mybatis查询时数据丢失经过排查得出结论解决办法Mybatis查询部分字段漏查问题(mysql)

Mybatis查询时数据丢失

公司里的实体类和mapper文件均由mybatis逆向工程生成

之前使用myabtis查询时直接使用注解@select(......)时遇到了一个问题。

结果显示数据库查询没有问题http://,但是有的数据缺没有插入到指定的字段中,如下图中ID成功存储,Z40_ID,Z40_103到Z40_113均失败。

经过排查得出结论

如果数据库命名很规范比如user_name,用逆向插件生成实体类时该字段会自动转换为userName

但是如果数据库命名形式为:字母(含数字)_字母(含数字)这种情况,自动映射就会失效,就会发生部分数据没有set到指定属性下;

解决办法

对于一些命名不规范的列需要加上注解手动映射

或者直接在mapper.xml文件里用xml方式写sql语句,一般逆向工程都自动生成列的映射规范了;

Mybatis查询部分字段漏查问题(mysql)

select xx1字段 xx2字段 xx3字段 from A表 where 条件

在OubjA查询的时候出现xx1字段的值和xx2的,xx3没出来,

1.(数据库字段是否有值?若无加一下值重启再试一下)

2.将sql语句放到SQLyog 或者Navicat for MySQL 等mysql工具进行查询,先确保语句得出结果没有问题23.3

3.若此时无问题,大部分因为数据库字段使用了一些敏感的外键字段,可适当修改一下这些健的名称

(记得对应实体类,mybatis语句也要跟着修改)数据库加入数据值 保存,重新启动程序.

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:jQuery 学习笔记
下一篇:mysql数据库文件夹指向自定义的位置
相关文章

 发表评论

暂时没有评论,来抢沙发吧~