mybatis-plus无法正确映射mysql列名
Posted 菜鸟的小知识
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis-plus无法正确映射mysql列名相关的知识,希望对你有一定的参考价值。
在数据库列命名方式同时存在下划线命名(user_id)和驼峰命名(UserId)时,我们会碰到映射错误的问题,mybatis-plus无法正确使用
例如在使用User.setletById()时,会报出错误:
com.baomidou.mybatisplus.exceptions.MybatisPlusException: java.lang.reflect.InvocationTargetException
这时可以在实体类的响应字段上加注解 @TableField("数据库列名")
PS:mybatis-plus注解
@TableName:数据库表相关
@TableId:表主键标识
@TableField:表字段标识
@TableLogic:表字段逻辑处理注解(逻辑删除)
@TableId(type= IdType.ID_WORKER_STR)
@TableField(exist = false):表示该属性不为数据库表字段,但又是必须使用的。
@TableField(exist = true):表示该属性为数据库表字段。
@TableField(condition = SqlCondition.LIKE):表示该属性可以模糊搜索。
@TableField(fill = FieldFill.INSERT):注解填充字段 ,生成器策略部分也可以配置!
以上是关于mybatis-plus无法正确映射mysql列名的主要内容,如果未能解决你的问题,请参考以下文章
Mybatis-Plus:了解Mybatis-Plus快速开始(Mybatis + Mybatis-Plus,Mybatis-Plus自动做了属性映射)