Java中的各种O

Java中数据的封装会被命名为各种O,常见的有PO、VO、DTO、BO、POJO。
1.PO
PO是Persistant Object的缩写,即持久化对象,通常对应数据模型,可以简单的理解为一个PO实例对应数据库中的一条记录,操作该实例即可以操作数据库中对应的数据。PO只封装数据库中对应的记录,不应该包含对数据库的操作。

2.VO
VO是Value Object的缩写,即值对象(也可以理解为View Object视图对象),通常用于封装页面上要展示的数据,在视图层传递,可以由PO转换而来,但是不能包含数据操作。

3.DTO
DTO是Data Transfer Object的缩写,即数据传输对象,通常用于封装服务与服务之间、分层与分层之间要传输的数据,不应该包含业务逻辑,对要传输的数据起到承载的作用。

4.BO
BO是Business Object的缩写,即业务对象,通常对应业务模型,封装业务数据,在业务服务层使用。BO中可以包含多个PO,封装业务数据。

5.POJO
POJO是Plain Ordinary Java Object的缩写,即简单Java对象,一个只有属性及属性setter和getter方法的基本JavaBean,是一个中间对象,可以用于多种用途,用于数据传输它就是DTO,用于数据展示它就是VO。

总结:对于各种O的使用,需要根据所在层、用途、及场合来选择,设计这些不同Object的目的就是为了区分不同应用场景下数据意义的不同,彼此之间隔离开,避免思路上的混杂,但是也不可过度的为了区分而使用,这样会造成思绪上的拥堵。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Java分层概念(转) 原文地址(也不属于原文吧,这也是别人转载的不知道原作者是谁,如有侵权,请联系,以删除):h...
    小小世界R阅读 5,573评论 0 0
  • java的(PO,VO,TO,BO,DAO,POJO)解释 O/R Mapping 是 Object Relati...
    逆风飞行1226阅读 6,745评论 0 7
  • service是业务层,DAO (Data Access Object) 数据访问 1.JAVA中Action层,...
    FSDemo阅读 9,982评论 0 5
  • 一个项目中说系统分为表现层、控制层、逻辑层、DAO层和最终数据库五层架构 表现层就是看到的东西,比如你现在看到的当...
    ZZS_简阅读 5,080评论 0 1
  • 我不是狐 只是 有狐的妖艳与妩媚 美没错 错在 太多人经不住诱惑 狐狸会骗 我却懒得用 我不是猴 只是 比它更精更...
    美丽天空一阅读 2,481评论 11 32