MyBatis-plus与数据库字段的映射方式
MyBatis-plus实体和数据库字段的映射
首先MyBatis-plus默认开启自动驼峰命名规则映射,其实就是驼峰转为下划线,例如:
我们的实体字段为errorMsg,遵循小驼峰命名,MyBatis-plus生成sql语句时会默认转为error_msg
生成的sql如下:
INSERT INTO log_history ( id, code, error_msg, time ) VALUES ( ?, ?, ?, ? )
很明显MyBatis-plus默认给驼峰命名转成下划线了;
此时如果我们数据库字段是驼峰命名就会报错,那么如何解决这种问题呢?

方案一
使用MyBatis-plus自带注解,在实体类字段名称上使用@TableField(value = “errorMsg”)这个注解,value里面对应的是数据库的具体字段名称
方案二
关闭MyBatis-plus的驼峰命名规则映射,在yml配置文件中添加如下配置
mybatis-plus:
configuration:
map-underscore-to-camel-case: false # 禁止驼峰命名时自动转为下划线
这样的话MyBatis-plus就不会帮我们做自动映射了,但是这样的话会影响整个项目的,用的时候需要注意一下
还有一点需要注意!
数据库设计规范优先使用蛇形命名法,就是带下划线的
数据库表的字段名应该全部用小写字母命名,禁止出现大写,如果有大写需要改为小写并用下划线连接,
- 正确示例:error_massage
- 错误示例:errorMassage
所以,MyBatis-plus默认为驼峰转蛇形命名(也就是下划线)是正确的,只是并不是所有公司的数据库表的设计都是规范的,比如说我们现在就是驼峰。。。
并不是所有公司的数据库表的设计都是规范的,比如说我们现在就是驼峰。。。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
基于SpringBoot接口+Redis解决用户重复提交问题
当网络延迟的情况下用户多次点击submit按钮导致表单重复提交,用户提交表单后,点击浏览器的【后退】按钮回退到表单页面后进行再次提交也会出现用户重复提交,办法有很多,我这里只说一种,利用Redis的set方法搞定,需要的朋友可以参考下2023-10-10
springboot项目mysql-connector-java默认版本如何查看
这篇文章主要介绍了springboot项目mysql-connector-java默认版本如何查看问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-11-11
Java中HashTable和HashMap的区别_动力节点Java学院整理
HashTable和HashMap主要的区别有:线程安全性,同步(synchronization),以及速度。接下来通过本文给大家简单介绍下HashTable和HashMap的区别,需要的的朋友参考下吧2017-04-04


最新评论