java中的VO、PO、BO、DAO、POJO

 

 针对java工程里的各类带O的对象,进行分析,了解各自的做用。java

 

  • PO:

 

persistent object,持久对象。与数据库里表字段一一对应。PO是一些属性,以及set和get方法组成。通常状况下,一个表,对应一个PO。是直接与操做数据库的crud相关。android

 

  • VO:

 

view object,又名:表现层对象,即view object。一般用于业务层之间的数据传递,和PO同样也是仅仅包含数据而已。但应是抽象出的业务对象,能够和表对应,也能够不,这根据业务的须要。对于页面上要展现的对象,能够封装一个VO对象,将所需数据封装进去。数据库

 

  • BO:

 

business object,业务对象。封装业务逻辑的 java 对象 , 经过调用 DAO 方法 , 结合 PO,VO 进行业务操做。 一个BO对象能够包括多个PO对象。如常见的工做简历例子为例,简历能够理解为一个BO,简历又包括工做经历,学习经历等,这些能够理解为一个个的PO,由多个PO组成BO。app

 

  • DAO:

 

data access object,数据访问对象。此对象用于访问数据库。一般和 PO 结合使用, DAO 中包含了各类数据库的操做方法。经过它的方法 , 结合 PO 对数据库进行相关的操做。夹在业务逻辑与数据库资源中间。学习

 

  • DTO:

 

data transfer object,数据传输对象。主要用于远程调用等须要大量传输对象的地方。spa

好比咱们一张表有 100 个字段,那么对应的 PO 就有 100 个属性。 可是咱们界面上只要显示 10 个字段, 客户端用 WEB service 来获取数据,没有必要把整个 PO 对象传递到客户端,对象

这时咱们就能够用只有这 10 个属性的 DTO 来传递结果到客户端,这样也不会暴露服务端表结构 . 到达客户端之后,若是用这个对象来对应界面显示,那此时它的身份就转为 VO。ip

 

  • POJO:

 

plain ordinary java object) 简单无规则 java 对象 ,纯的传统意义的 java 对象。资源

 

 

转载自:https://www.toutiao.com/a6703062618506002956/?tt_from=mobile_qq&utm_campaign=client_share&timestamp=1560731184&app=news_article&utm_source=mobile_qq&utm_medium=toutiao_android&req_id=201906170826240100230720840976155&group_id=6703062618506002956get

相关文章
相关标签/搜索