java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > mybatis-plus下划线驼峰转换

mybatis-plus踩坑之下划线驼峰转换方式

作者:Echoo华地

MyBatis-Plus默认驼峰转下划线导致实体字段匹配失败,关闭该功能后需手动配置映射,建议避免字段使用下划线,若必须则可通过注解、重写toString或调整字段名解决

问题:对象中包含下划线的字段儿查询不出来

mybatis-plus中,默认开启了下滑线-驼峰转换

会把数据库字段中的下划线自动转换成驼峰形式,然后去匹配实体类对象的字段

online_num -> onlineNum

如果在一个实体类中存在一个带下划线的字段,查询出来为null

 private Integer online_num;

即使用了@TableField()注解去指定映射关系,查询结果也为null

 @TableField("online_num")
 private Integer online_num;

问题就是出现在了驼峰转换这里,因为已经指明了映射关系,所以把驼峰转换关掉就行:

mybatis-plus:
  configuration:
    map-underscore-to-camel-case: false
mybatis-plus.configuration.map-underscore-to-camel-case=false

但是这里有个问题,你关了自动驼峰转换,所有字段都要通过@TableField()注解去指定映射关系或者在mapper.xml中指定映射关系,这样增加了很多工作量。

所以非必要情况下类字段还是不要用_去命名字段,省得麻烦。

实在不行,如果一定要用下划线字段,

看看具体的原因是什么

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文