后端向前端传输的数据不想完全展示时,可以创建DTO类,将userDTO的数据发送给前端
User实体类
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("tb_user")
public class User implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 手机号码
*/
private String phone;
/**
* 密码,加密存储
*/
private String password;
/**
* 昵称,默认是随机字符
*/
private String nickName;
/**
* 用户头像
*/
private String icon = "";
/**
* 创建时间
*/
private LocalDateTime createTime;
/**
* 更新时间
*/
private LocalDateTime updateTime;
}
UserDTO
@Data
public class UserDTO {
private Long id;
private String nickName;
private String icon;
}
这样就只将id,nickName,icon返回给前端展示。
使用hutool工具直接将User转化为UserDTO
UserDTO userDTO = BeanUtil.copyProperties(user, UserDTO.class);
需要引入的依赖
<!--hutool-->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.7.17</version>
</dependency>
UserDTO转为Map对象
Map<String, Object> userMap = BeanUtil.beanToMap(userDTO)
将查询到Hash数据转UserDT0对象
UserDTo userDTO =Beanutil.fillBeanwithMap(userMap,new UserDTO(),false);