为什么要设计DTO类/什么时候设置DTO类?

为什么设计DTO类?

例如:根据新增员工接口设计对应的DTO

前端传递参数列表:

**思考:**是否可以使用对应的实体类来接收呢?

注意:前端提交的数据和实体类中对应的属性差别比较大, 所以自定义DTO类。

java 复制代码
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类用于只将前端需要的数据封装起来返回给前端,而其他不需要的就不用封装了。

相关推荐
小羊没烦恼!3 天前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
俊昭喜喜里3 天前
java中的继承和多态的区别
java
小羊没烦恼!3 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
譕痕3 天前
JSONObject与JSONArray封装数据格式区别
java·json
胡写代码3 天前
别再前后端各写一套表单校验了
java·后端
小鱼能吃糖3 天前
缺陷修复总览 · mall电商项目:5类缺陷,1个病根,4个业务域
java·电商
此时不提桶,更待何时3 天前
01-06-A-JVM排查实战详解
java·jvm
vipxieliang3 天前
ValidX 在 DDD 领域驱动设计中的实践
java·spring boot
ba_pi3 天前
mysql 查询所有表名并授权
java
ProcessOn官方账号3 天前
java函数式编程--入门基础
java·编程·函数式编程