mabatisplus 驼峰名映射
时间: 2023-05-10 22:50:46 浏览: 125
MyBatis Plus (以下简称 MP)是一个 MyBatis 增强工具,为我们提供了诸如代码生成器、分页查询、多租户、逻辑删除等常用功能的封装,方便我们快速开发,提高开发效率。
MP 默认开启了驼峰命名下划线映射。简单来说,就是在数据库的表和实体类的字段命名不一致时,可以通过驼峰命名和下划线命名的自动转换来实现相应的映射。
例如,数据库表的字段是 create_time,而实体类的字段是 createTime,那么 MP 就会自动将这两个字段进行相应的映射。
在 MP 中,开启驼峰命名下划线映射的方法非常简单,只需要在实体类的属性上添加 @TableField 注解就可以了。这个注解主要包含三个属性值,分别是 value、exist 和 jdbcType。
其中 value 属性用于映射实体类的属性名和数据库表的列名,如果属性名和列名不一致可通过这个属性进行映射。exist 属性是一个布尔类型的值,在实体类中创建一个与数据库字段不匹配的属性时使用,如果 exist = false,则这个属性不会被自动添加到数据库的 SQL 语句中。jdbcType 属性用于映射数据库字段的数据类型。
例如:
```java
@Data
public class User {
/**
* 主键 id
*/
private Long id;
/**
* 用户名
*/
@TableField(value = "user_name", jdbcType = JdbcType.VARCHAR)
private String userName;
/**
* 密码
*/
@TableField(value = "password", jdbcType = JdbcType.VARCHAR)
private String password;
}
```
在此例中,@TableField(value = "user_name") 就是一个驼峰命名下划线映射的示例。用户实体类中的属性名为 userName,而对应的数据库表中的列名是 user_name。通过设置 @TableField 的 value 属性,实现了这两个字段的映射。
阅读全文