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 类来进行属性的复制。

MyBatis-Plus 将查询结果映射为 VO 对象 - 代码示例

原文地址: https://www.cveoy.top/t/topic/nm3p 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录