PO DAO VO DTO BO POJO
PO DAO VO DTO BO POJO
PO
persistant object
用于表示数据库中的一条记录映射的java对象。
PO仅仅用于表示数据,没有任何数据操作。
遵守java Bean规范,拥有getter和setter方法。
DAO
Data Access Object
使用DAO访问数据库,包括插入更新删除查询等操作,与PO一起使用。
DAO一般在持久层,完全封装数据库操作,对外暴露的方法是的上层应用不要需要关注数据库相关的任何信息
VO
Value Object
前端交互的java对象。
VO只包含前端展示的数据
DTO
Data Transfer Object
表示一个数据传输对象,用于不同服务层之间的数据传输。
DTO与VO概念相似,并且通常情况下字段也基本一致
但设计理念不同
BO
Business Object 用于表示一个业务对象。
BO包含业务逻辑,封装DAO和RPC的调用
可以进行VO和DTO之间的转换。BO通常位于业务层,区别于直接对外提供服务的服务层
BO 提供了基本业务单元的基本业务操作,在设计上属于被服务层业务流程调用的对象,一个业务流程可能需要调用多个 BO 来完成。
POJO
Plain Ordinary Java Object
PO、VO、DTO都是典型的POJO
如图所示