为什么设计DTO类?
例如:根据新增员工接口设计对应的DTO
前端传递参数列表:
思考:是否可以使用对应的实体类来接收呢?
注意:前端提交的数据和实体类中对应的属性差别比较大,所以自定义DTO类。
package com.sky.dto;import lombok.Data;import java.io.Serializable;@Data
public class EmployeeDTO implements Serializable {private Long id;private String username;private String name;private String phone;private String sex;private String idNumber;}
总结目的就是:减少多余的参数,出于安全性、节约流量的考虑。
这里顺带提一嘴为什么要设计VO类:
VO类可以用于将从数据库表查询到的到数据封装起来:
因为查询数据库时大多会用关联查询,而关联查询出来的结果集字段又会和实体类对象的属性不一致,所以用VO来封装查询结果集。
当查询到的数据太多,而前端又不需要全部数据,定义VO类用于只将前端需要的数据封装起来返回给前端,而其他不需要的就不用封装了。