MyBatis-Plus 将查询结果映射为 VO 对象 - 代码示例
MyBatis-Plus 将查询结果映射为 VO 对象 - 代码示例
本文将介绍如何使用 MyBatis-Plus 将数据库查询结果映射为自定义的 VO 对象。
假设有以下实体类:
public class User {
private Long id;
private String username;
private Integer age;
// getter and setter
}
需要将查询结果映射为以下 VO 类:
public class UserVO {
private Long id;
private String name;
private Integer years;
// getter and setter
}
可以使用 MyBatis-Plus 自带的 BeanUtils.copyProperties 方法,将查询结果转换为 VO 对象:
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public List<UserVO> listUserVO() {
List<User> userList = userMapper.selectList(null);
List<UserVO> userVOList = new ArrayList<>();
for (User user : userList) {
UserVO userVO = new UserVO();
BeanUtils.copyProperties(user, userVO);
userVO.setName(user.getUsername());
userVO.setYears(user.getAge());
userVOList.add(userVO);
}
return userVOList;
}
}
在该示例中,首先使用 MyBatis-Plus 查询出 User 实体类的列表,然后遍历该列表,将每个 User 实体类转换为 UserVO 对象,并设置需要的属性值,最后将 UserVO 对象添加到返回的列表中。注意,这里使用了 Spring 的 BeanUtils 类来进行属性的复制。
原文地址: https://www.cveoy.top/t/topic/nm3p 著作权归作者所有。请勿转载和采集!