【MyBatis Plus】MyBatis Plus对象封装如何使用?

Mybatis Plus提供了丰富的对象封装功能,主要有:

1. Entity类封装

可以使用@TableName和@TableField自动封装实体类:

@TableName("user")
public class User {

  @TableId("id")
  private Integer id;

  @TableField("name")
  private String name;

}

Mybatis Plus会自动映射表名和字段名。

2. ResultMap封装

提供了全局的BaseResultMap,可以自动映射字段:

@Select("select * from user")   
@ResultMap    
public List<User> selectAll();

或者自定义ResultMap:

@ResultMap("userResult")
public List<User> selectAll();

3. SQL封装

提供@Select、@Update、@Insert等注解,封装SQL:

@Update("update user set ${et.column}=${et.currentValue} where id=#{id}")
public void updateById(User user);

4. 参数对象封装

提供#{}和${}等内置参数对象,简化参数传递:

@Select("select * from user where id = ${id}")
public User selectById(@Param("id") Serializable id);

5. 复杂条件封装

提供Wrapper对象封装复杂条件:

public void selectByWrapper(Wrapper<User> wrapper);

然后可以:

wrapper.eq("name","John").like("email","a");

通过这些对象封装,降低了Mybatis Plus的使用难度。

主要特点包括:

  • 实体类自动映射
  • ResultMap自动封装
  • SQL语句封装
  • 简化参数传递
  • 封装复杂条件

提供了多种对象,有效解决SQL与Java之间的映射。