首页
学习
活动
专区
圈层
工具
发布

PO,BO,VO,DTO

里或者PO里都不恰当 3、为什么要有VO?...VO是拿给前端展示给用户的实体 a) 有一些敏感的属性不能给前端展示,涉及安全问题 4、为什么要有DTO?...举例: 1、前端传给我们的参数我们自动封装成了VO 2、我们在Controller里把VO转成了BO,然后调用Service里的方法 3、Service层处理业务的时候发现要调用一个外部服务,那么就组装一个...DTO参数去调用外部RPC服务,最终得到的DTO的结果我们在转成我们自己的BO再参与到业务处理中 4、Service处理的结果要查询DB,那么从DAO层返回来的是一个PO,我们也是把PO先转成我们的BO...在参与业务处理 5、Service层处理完业务返回了一个BO,然后在Controller里我们把他转成VO再对外提供出去 五、遵循了原则?

99830

entity,pojo,vo,dto 详解

在Java项目中,包名通常用于组织代码,使其更加清晰和易于维护。entity、pojo、vo和dto是常见的包名,它们各自有不同的含义和用途。...2.pojo(Plain Old Java Object 包) 详细说明: pojo包中的类通常是简单的Java对象,它们不包含任何业务逻辑,主要用于数据的封装。...3.vo(Value Object 包) 详细说明: vo包中的类通常用于封装特定的业务逻辑或数据处理。与pojo不同,vo类可能包含一些业务逻辑,如数据转换、验证等。...4.dto(Data Transfer Object 包) 详细说明: dto包中的类用于在不同的层之间传输数据,它们通常包含多个entity或pojo对象的数据,用于简化数据传输过程。...总结 名称 说明 Entity 实体,通常和数据库中的表对应 DTO 数据传输对象,通常用于程序中各层之间传递数据 VO 视图对象,为前端展示数据提供的对象 POJO 普通Java对象,只有属性和对应的

57510
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java中的VO,BO,PO,DO,DTO

    作为Java开发人员,大部分人不免要接触VO,BO,PO,DO,DTO之类的,但很多人对这些概念一直以来都是云里雾里,团队开发过程中也总是处于混乱的状态,抓起来就用,本来是规范性的东西,却反而导致更加混乱了...VO比较容易混淆的是DTO,DTO是展示层与服务层之间传递数据的对象,可以这样说,对于绝大部分的应用场景来说,DTO和VO的属性值基本是一致的,而且他们通常都是POJO,那么既然有了VO,为什么还需要DTO...,服务层只负责业务,与具体的表现形式无关,DTO不应该出现与表现形式的耦合,DTO定义的是原始数据,VO再对DTO数据进行解释。...这下VO和DTO用法就清晰很多了。...例如业务不复杂,根本没有多端展示的差异化,VO可以直接拿掉,直接使用DTO传输到前端数据即可。

    11.6K31

    VO,DTO,PO 的见解

    1.VO,DTO,PO的概念 VO 是Value Object 的缩写,值对象,位于视图层,每一个字段与视图层所需要的字段对应 DTO是Data Transfer Object 的缩写,数据传输对象...了 我们要先从页面上拿到VO,然后判断VO中的age是不是大于20,如果大于20,就把VO中的username和password拿出来,放到DTO中,然后在把DTO中的username和password...原封不动地放入PO中,然后将PO传入数据库,这就是他们三个的区别 PS:VO对应于页面上需要显示的数据,PO对应于数据库中存储的数据,DTO对应于除二者之外需要进行传递的数据,DTO只是VO到PO,或者...VO。...展示层把VO转换为服务层对应方法所要求的DTO,传送给服务层。 服务层首先根据DTO的数据构造(或重建)一个DO,调用DO的业务方法完成具体业务。

    1.1K41

    PO,BO,VO,DTO 区别详解

    里或者PO里都不恰当 3、为什么要有VO?...VO是拿给前端展示给用户的实体 a) 有一些敏感的属性不能给前端展示,涉及安全问题 4、为什么要有DTO?...先上图 image.png 举例: 1、前端传给我们的参数我们自动封装成了VO 2、我们在Controller里把VO转成了BO,然后调用Service里的方法 3、Service层处理业务的时候发现要调用一个外部服务...,那么就组装一个DTO参数去调用外部RPC服务,最终得到的DTO的结果我们在转成我们自己的BO再参与到业务处理中 4、Service处理的结果要查询DB,那么从DAO层返回来的是一个PO,我们也是把PO...先转成我们的BO在参与业务处理 5、Service层处理完业务返回了一个BO,然后在Controller里我们把他转成VO再对外提供出去 五、遵循了原则?

    3.7K65

    Java开发中PO、VO、DAO、BO、DTO、POJO 含义

    真的有必要定义 VO,BO,PO,DO,DTO 吗 在讲具体的概念之前,先简单的讲一讲MVC开发模式。...> 而VO,BO,PO,DO,DTO呢,就是穿梭在这M、V、C层之间的实体传输对象。...项目中真的有必要定义VO,BO,PO,DO,DTO吗? 还是要理性看待这个问题,要看项目“目的地”是什么。...如果项目比较小,是一个简单的MVC项目,又是单兵作战,不建议使用VO,BO,PO,DO,DTO,直接用POJO负责各个层来传输就好,因为这种项目的“目的地”是快速完成。...而更多的时候,是持续迭代的团队协作项目,这个时候就建议用VO,BO,PO,DO,DTO,而且团队内要达成共识,形成一个标准规范。

    1.5K70

    VO、DTO、DO、PO 我告诉你

    导图下载请点击文章底左下角->阅读原文 VO与DTO的区别 DTO代表服务层需要接收的数据和返回的数据,而VO代表展示层需要显示的数据。...对于绝大部分的应用场景来说,DTO和VO的属性值基本是一致的,而且他们通常都是POJO,因此没必要多此一举,但不要忘记这是实现层面的思维,对于设计层面来说,概念上还是应该存在VO和DTO,因为两者有着本质的区别...VO与DTO的应用 上面只是用了一个简单的例子来说明VO与DTO在概念上的区别,本节将会告诉你如何在应用中做出正确的选择。...在以下才场景中,我们可以考虑把VO与DTO二合为一(注意:是实现层面): 当需求非常清晰稳定,而且客户端很明确只有一个的时候,没有必要把VO和DTO区分开来,这时候VO可以退隐,用一个DTO即可,为什么是...VO退隐而不是DTO?

    5.8K81

    关于DO,VO,DTO,QueryParam的思考

    # 关于DO,VO,DTO,QueryParam的思考 总结一下最近项目中的一些问题 DO(Domain Object):领域对象,就是从现实世界中抽象出来的有形或无形的业务实体。...当针对的查询语句时,可以将查询的VO对象单独定义一个,用QueryParam作为查询对象,与基本的VO区别开来 DTO(Data Transfer Object):数据传输对象,主要用于外部接口参数传递封装...:用于接口间的传输,可以不同于DO传递接口间需要的参数,本文DTO和DO一致 package com.test.understand.pojo.dto; import java.util.Date; import...在返回值到达Controller之后,由于需要展示给前端,DTO对象还需要转化为VO对象 # 总结 除QueryParam以外,VO对象进入Controller之后需要进行对象转换变为DTO方便数据在接口中间的传递...在数据库操作之前,DTO对象需要转换为DO 在返回值的过程中,数据库返回的对象除基本类型之外需要转为DTO传递 在返回值回到Controller时,需要将DTO对象转换为VO对象,从而返回给前端

    3.7K10

    DO,DTO,VO,POJO 你知道吗?

    以下内容参考阿里巴巴 Java 开发手册,如果有需要可以在微信公众号「01 二进制」后台回复「Java 开发手册」获得。...•POJO( Plain Ordinary Java Object):POJO 专指只有 setter/getter/toString 的简单类,包括 DO/DTO/BO/VO 等。...•DTO,用于传输数据,可能传递给前端,也有可能传递给其他系统。用于承载数据。•VO,这个最好理解,前端最后需要的数据长什么样,对应的对象就是 VO。 如何使用这些 O?...2.DTO 和 BO 在一般情况下,如果业务系统不是非常复杂,可以考虑省略。3.VO 和 DTO,DTO 可以用于将数据传递给前端,如果你不需要删减字段的话,VO 可以考虑省略。...•POJO 是 DO/DTO/BO/VO 的统称,禁止命名成 xxxPOJO。

    1.3K20

    DTO、TO、VO、PO、DO、BO、AO、DAO、POJO

    ——杨沫 之前一直有朋友问我Java中DTO、TO、VO、PO、DO、BO、AO、DAO、POJO这么多O到底是什么意思,看博客看不懂,有没有实际的例子 当然,这些O是出自《阿里Java开发手册》...POJO(Plain Ordinary Java Object): 在本规约中,POJO 专指只有 setter/getter/toString 的 简单类,包括 DO/DTO/BO/VO 等。...我就说说我的理解吧,顺带写点例子 这里就写个根据用户名、分页参数查询用户列表的例子吧 DTO(Data Transfer Object)数据传输对象 首先我们接口接参可以使用DTO,简单来说就是Controller...Object)**专指只有 setter/getter/toString 的简单类,包括 DO/DTO/BO/VO 等。...这就是我对DTO、TO、VO、PO、DO、BO、AO、DAO、POJO的理解了 其实在不同的公司,不同的技术经理会定好,或者公司内部有相关文档等,这上面也只是我当前公司沿用的,仅供参考,如有争议也欢迎与我探讨

    2.9K10

    Java分层开发必知:PO、BO、DTO、VO、POJO概念详解

    引言 在Java企业级开发中,我们经常会遇到POJO、PO、DTO、BO、VO等各种对象概念,这些看似相似的术语常常让开发者感到困惑。...Object,简单Java对象) 定义:POJO是所有简单Java对象的统称,VO、DTO、PO等均属于POJO 特点:仅包含属性及Getter/Setter方法,不依赖特定框架 二、对比与区别 1、...,可能组合多个PO VO Controller层与前端交互 按前端需求定制字段 2、关键区别 PO vs DTO:PO严格映射数据库表,DTO可根据业务需求裁剪字段 DTO vs VO:DTO关注传输效率...例如,DTO可能包含敏感字段(如用户ID),而VO仅展示脱敏后的信息 BO vs PO:BO包含业务逻辑,PO仅存储数据。...VO保护敏感数据,DTO适配不同接口需求,PO确保数据持久化准确,BO封装复杂业务逻辑。在开发中,根据项目复杂度选择合适的对象类型,并统一团队规范,提升代码可读性和可维护性。

    9.1K34

    PO、VO、DAO、BO、DTO、POJO能分清吗?

    《阿里巴巴Java开发规范》关于领域模型的部分介绍如下 分层领域模型规约: DO(Data Object):此对象与数据库表结构一一对应,通过 DAO 层向上传输数据源对象。...DTO(Data Transfer Object):数据传输对象,Service 或 Manager 向外传输的对象。...POJO是DO/DTO/BO/VO的统称,禁止命名成xxxPOJO。 PO (persistant object )持久对象 可以看成是与数据库中的表相映射的java对象。...到达客户端以后,如果用这个对象来对应界面显示,那此时它的身份就转为VO。...POJO (Plain Old Java Objects) 简单的Java对象 实际就是普通JavaBeans,使用POJO名称是为了避免和EJB混淆起来, 而且简称比较直接.其中有一些属性及其getter

    1.3K20

    史上最全的Java实体类VO,DTO,BO,DO解释

    欢迎关注微信公众号:数据科学与艺术 作者WX:superhe199 阿里巴巴Java开发手册中的分层领域模型规约: Query: 数据查询对象,各层接收上层的查询请求。...4) POJO是 DO/DTO/BO/VO的统称,禁止命名成 xxxPOJO。...简单来说,我们不需要把整个PO对象的全部字段传输到客户端,而是可以用DTO重新封装,传递到客户端。此时,如果这个对象用来对应界面的展现,就叫VO。...用法: 不可以继承自 Entity DTO 可以继承、组合其他 DTO,VO,BO 等对象 DTO 只能用于前端、RPC 的请求参数 四、VO(View Object) 视图对象 XxxxVO,用于展示层...用法: 不可继承自 Entity VO 可以继承、组合其他 DTO,VO,BO 等对象 VO 只能用于返回前端、rpc 的业务数据封装对象 五、Query 数据查询对象Query,各层接收上层的查询请求

    52410
    领券