Spring Boot + Mybatis 注解模式 读库并映射到实体类对象 的两种方式

如果实体类属性名称和数据库字段一样,在@Select标注的方法上面可以不加@Results标注,来指定读库返回结果,对应到实体类对象的各个字段,

如,

数据库表user,字段user_name,user_age

则以下两种方式都可以:

  1. 实体类属性名称和数据库字段一样
    实体类User.java
public class User {
  private String user_name,
  private String user_age,
}

Mapper类里读就可以直接这样写了,当然也可以@Results标注

@Mapper
public interface UserMapper {
  @Select("select * from user")
  List<User> getAllUsers();
}
  1. 实体类属性名称和数据库字段不一样
    实体类User.java
public class User {
  private String userName,
  private String userAge,
}

Mapper类必须加上@Results

@Mapper
public interface UserMapper {
  @Select("select * from user")
  @Results({
    @Result(property = "userName", column = "user_name"),
    @Result(property = "userAge", column = "user_age")
  })
  List<User> getAllUsers();
}
原文地址:https://www.cnblogs.com/jayworld/p/15438910.html