数据库字段与实体类对应不上的问题
如图所示

很明显, 数据库中的zoneId和provinceId并没有采用下划线的方式 , 这就导致mybatisPlus内部封装的curd可能会报错, 如使用 xxxService.list()方法时,
@ApiOperation("获取省列表")
@PostMapping("/getProvinces")
public ResultUtils<SaleProvince> getProvinces() {
// List<SaleProvince> list = saleProvinceService.getProvinceList();
List<SaleProvince> list = saleProvinceService.list();
return ResultUtils.success("查询成功", list);
}
就会产生下面的错误,

因为我在配置文件配置的是, 驼峰映射, 所以, mybatisPlus会默认去把实体类的所有的驼峰转化为下划线的方式去数据库中寻找对应的字段, 即去数据库中寻找zone_id字段, 但是数据库中并没有这个字段, 所以就会导致报错 。
解决方案:
给实体类中不符合驼峰规范的字段添加注解, @TableFiled(value=“数据库中对应的字段名称”)

测试一下: 查询正常


本文解决MyBatisPlus在使用驼峰命名规则时,实体类字段与数据库字段映射不匹配的问题。通过添加@TableField注解指定数据库字段名,实现正确映射,避免运行时错误。
4996

被折叠的 条评论
为什么被折叠?



