开发者

MyBatis-plus与数据库字段的映射方式

开发者 https://www.devze.com 2025-11-05 10:28 出处:网络 作者: 张 先生
目录MyBATis-plus实体和数据库字段的映射方案一方案二总结MyBatis-plus实体和数据库字段的映射
目录
  • MyBATis-plus实体和数据库字段的映射
    • 方案一
    • 方案二
  • 总结

    MyBatis-plus实体和数据库字段的映射

    首先MyBatis-plus默认开启自动驼峰命名规则映射,其实就是驼峰转为下划线,例如:

    我们的实体字段为errorMsg,遵循小驼峰命名,MyBatis-plus生成sql语句时会默认转为error_msg

    编程成的sqhttp://www.devze.coml如下:

    INSERT INTO log_history ( id, code, error_msg, time ) VALUES ( ?, ?, ?, ? )
    

    很明显MyBatis-plus默认给驼峰命名转成下划线了;

    此时如果我们数据库字段是驼峰命名就会报错,那么如何解决这种问题呢?

    MyBatis-plus与数据库字段的映射方式

    方案一

    使用MyBatis-plus自带注解,在实体类字段名称上使用@TableField(value = “errorMsg”)这个注解,value里面对应的是数据库的具体字段名称

    方案二

    关闭MyBatis-plus的驼峰命名规则映射,在yml配置文件中添加如下配置

    mybatis-plus:
      configuration:
        map-underscore-to-camel-case: false # 禁止驼峰命名时自动转为下划线
    

    这样的话MyBatis-pluhttp://www.devze.coms就不会帮我们做自动映射了,但是这样的话会影响整个项目的,用的时候需要注意一下

    还有一点需要注意!

    数据库设计规范优先使用蛇形命名法,就是js带下划线的

    数据库表的字段名应该全部用小写字母命名,禁止出现大写,如果有大写需要改为小写并用下划线连接,

    • 正确示例:error_massage
    • 错误示例:errorMassage

    所以,MyBatis-plus默认为驼峰转蛇形命名(也就是下划线)是正确的,只是xtEZCWBJ并不是所有公司的数据库表的设计都是规范的,比如说我们现在就是驼峰。。。

    并不是所有公司的数据库表的设计都是规范的,比如说我们现在就是驼峰。。。

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

    0

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    关注公众号