首页 > 其他分享 >区分PO、VO、 BO、 DTO、 POJO

区分PO、VO、 BO、 DTO、 POJO

时间:2023-05-26 13:56:56浏览次数:40  
标签:BO DTO 对象 Object POJO VO PO

  分层领域模型规约:

  • DO(Data Object):此结构与数据库表结构一一对应,通过DTO向上传输数据源对象。
  • DTO(Data Transfer Object):数据传输对象,Service 或 Manager 向外传输的对象。
  • BO(Business Object):业务对象,由Service 层输出的封装业务逻辑的对象。
  • AO(Application Object):应用对象,在Web 和 Service 层之间抽象的复用对象模型。
  • VO(Value Object):显示层对象,通常是Web向模板渲染引擎层传输的对象。
领域模型命名规范:
  • 数据对象:xxxDO,xxx即为数据表名;
  • 数据传输对象:xxxDTO,xxx为业务领域相关的名称;
  • 展示对象:xxxVo,xxx为网页名称;
  • POJO是DO/DTO/BO/VO的统称,禁止命名成xxxPOJO。
 
  • PO(Persistant Object),持久对象
  可以看成是与数据库中的表相映射的java对象。使用Hibernate生成PO是不错的选择。
  • VO(Value Object),值对象
  通常用于业务层之间的数据传递,和PO一样也仅仅包数据而已。但应该是抽象出的业务对象,不要求必须和表对应,根据业务需要。PO只能在数据层,VO用在商业逻辑层和表示层。
  • DTO(Data Transfer Object),数据访问对象接口
  与数据库打交道,夹在业务逻辑与数据库资源中间。
  • BO(Business Object),业务对象层
  表示应用程序领域内"事物"的所有实体内。这些实体类驻留在服务器上,并利用服务类来协助完成他们的职责。
  • DTO(Data Transfer Object),数据传输对象
  只要用于远程调用等需要大量传输对象的地方。例如某张表有100个字段,那么对应的PO就有100个属性。但业务需求是在 界面上显示其中10个字段即可,客户端采用Web Service来获取数据,就没有必要把整个PO对象传递到客户端,这时就可以把需要的10个字段通过DTO传递到客户端。如果用这个对象来对应界面显示,就可以转换为VO。
  • POJO(Plain Old Java Objects),简单的Java对象
  实际就是普通的JavaBeans,使用POJO是为了避免与EJB混淆。  

标签:BO,DTO,对象,Object,POJO,VO,PO
From: https://www.cnblogs.com/ydy-blog/p/17434507.html

相关文章

  • PMBOK的132种工具
    一、数据收集技术,用于从各种渠道收集数据与信息,共有九种数据收集工具与技术。1.标杆对照:和别的比比。2.头脑风暴:一起想。3.核查表:比如全班学生的数理化成绩表,列为姓名,行为科目。4.核对单:Checklist。5.焦点小组:小组一起交流。6.访谈:一问一答。7.市场调查:各种渠道了解市场情况......
  • SpringBoot集成JWT(极简版)
    话不多说,直接上代码接口统一前缀设置importorg.springframework.context.annotation.Configuration;importorg.springframework.web.bind.annotation.RestController;importorg.springframework.web.servlet.config.annotation.PathMatchConfigurer;importorg.springframewo......
  • docker login harbor x509: certificate signed by unknown authority
    前言dockerloginharborx509:certificatesignedbyunknownauthority解决打开/etc/docker/daemon.json,如果没有这个文件新增即可vim/etc/docker/daemon.json加入insecure-registries{"insecure-registries":["harbor.xxxx.com:1111"]}重启dockersudo......
  • BOSHIDA DC电源模块的主要作用与应用
    BOSHIDADC电源模块的主要作用与应用DC电源模块是一种电源转换器件,作用是将输入电源的直流电压转换为稳定的输出直流电压,以供电子器件使用。DC电源模块主要作用是将交流电源转换为直流电源,为电子设备提供稳定的直流电源。它可以在各种电子设备和电路中,如通信设备、工业控制、计算......
  • 实例讲解Spring boot动态切换数据源
    摘要:本文模拟一下在主库查询订单信息查询不到的时候,切换数据源去历史库里面查询。本文分享自华为云社区《springboot动态切换数据源》,作者:小陈没烦恼。前言在公司的系统里,由于数据量较大,所以配置了多个数据源,它会根据用户所在的地区去查询那一个数据库,这样就产生了动态切换数据源......
  • JAVA语言springboot框架实现的求职招聘管理系统
    技术架构技术框架:SpringBoot+FreeMarker+JPA+MySQL5.7运行环境:jdk8+IntelliJIDEA+maven3+宝塔面板宝塔部署教程回到IDEA,点击编辑器右侧maven图标,执行package,完成后就会在根目录里生成一个target目录,在里面会打包出一个jar文件。宝塔新建一个数据库,导入数据库文件......
  • FLEX4实践—DropDownList与ComboBox
    FLEX4相对FLEX3的组件变化列表中列出以这么一项:mx.controls.ComboBox->spark.components.DropDownList 官方解释如下:   ComboBox控件是DropDownListBase控件的子类。与DropDownListBase控件类似,当用户从ComboBox控件的下拉列表中选择某项时,数据项将显示在......
  • JAVA语言开发springboot框架实现的自动化立体智慧仓库WMS
    技术架构技术框架:SpringBoot+layui+HTML+CSS+JS运行环境:jdk8+IntelliJIDEA+maven3+宝塔面板宝塔部署教程回到IDEA,点击编辑器右侧maven图标,执行package,完成后就会在根目录里生成一个target目录,在里面会打包出一个jar文件。宝塔新建一个数据库,导入数据库文件,数据......
  • 实例讲解Spring boot动态切换数据源
    摘要:本文模拟一下在主库查询订单信息查询不到的时候,切换数据源去历史库里面查询。本文分享自华为云社区《springboot动态切换数据源》,作者:小陈没烦恼。前言在公司的系统里,由于数据量较大,所以配置了多个数据源,它会根据用户所在的地区去查询那一个数据库,这样就产生了动态切换数......
  • idea显示springboot多服务启动界面service
    如果是多模块的微服务,idea提供了一个可以多服务启动的界面services,如果你的项目里没看到这个界面:那么你需要在顶级的maven工程中找到这个配置,然后找到componentname="RunDashboard"这个节点整个替换掉:<componentname="RunDashboard"><optionname="configurationTypes">......