mybatis有字段存不进去_MyBatis 报找不到某个字段 无法对数据库进行操作

本文介绍了处理MyBatis实体类与数据库字段不一致时的常见解决方案,包括检查字段命名一致性、使用@TableField注解以及XML映射文件的校验。重点在于理解MyBatis的映射机制,确保SQL执行正确和实体映射匹配。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一般这种情况可以通过以下思路解决:

1.先查看实体类的对应字段是否和数据库保持一致(没有强制完全一样,下划线,驼峰命名都可以自动帮你匹配)

2.如果是MyBatis-plus可以添加@TableField(exists=false)的注解,意思是实体类有,但数据库可以没有

3.如果使用到了xml的形式对实体和数据库进行映射,可以从两方面查看

3.1查看sql语句是否有些错(一般有些错的话,报错很明显会报sql语法有误,这个很容易辨别)

3.2查看配置文件的实体映射是否映射对应,当你修改某个实体字段时,在做BaseResultMap的时候,要同时做联动(在数据库对应的column,在实体类对应的property)

如果你发现没有报错了,而是报了其他乱七八糟的错,那建议你重新梳理一下MyBatis的流程,一步一步走,人工debug

1.如果是SSM框架:

1.1 检查配置实体映射类和sqlMapConfig(具体的可以百度),一定要知道这两个配置文件是怎么走的

1.2 检查resource下面的包有没有被你的Spring的配置文件扫描到

1.3 检查新建resource下面的directory的时候,需要注意要用  “/”  而不是  “.”

1.4 检查mapper/dao接口的时候,有没有和mapper.xml 文件名一致

1.5 后续待添加。。。

2.如果是SpringBoot框架

2.1 在启动类记得添加扫描包

2.2 一般都会用到xml,因为可能要多表联查,所以xml的一些配置一定要注意,包括实体类的路径,resultMap的映射关系都要检查一遍

2.3 后续待添加。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值