Java 对象类型
Po 持久对象
bean、entity 等命名。
表示数据库中一条记录映射成的java对象。仅表示数据,无任何操作。遵守Java Bean 规范,拥有 getter/setter 方法
Ao 应用对象
在web层与service层之间抽象的复用对象模型,切近展示层,复用度不高。
Bo 业务对象
service、manager、business 等命名
封装对象、复杂对象。里面包含多个类。
由service 层输出的封装业务逻辑的对象。把业务逻辑封装为一个对象。对象包括一个或多个其他的对象。
包括业务逻辑,封装了对Dao、Rpc等的调用,可进行Po 与Vo/Dto之间的转换。常位于业务层,区别于服务层:Bo 提供基本业务单元的基本业务操作,属于被服务层业务流程调用的对象,一个业务流程可能需要多个Bo来完成。
Do 数据库表结构
与数据库表结构一一对应,通过Dao层向上传输数据源对象。
Vo 表现对象
前端界面展示;对应界面显示的数据对象。
Dto 数据传输对象
经过处理后的Po,可增加或减少Po的属性
数据传输对象,Service 或 Manager 向外传输的对象。
前端调用时传输;上层调用时传输;
遵守Java Bean 规范,拥有getter/setter方法
Dao 数据访问对象
封装对数据库的访问。通过它把Pojo转换为Po,用Po组装出Vo、Dto
用于表示一个数据访问对象。使用Dao访问数据库等操作,一般在持久层,完全封装数据库操作。
Pojo 简单Java对象
一种概念或者接口,身份及作用随环境变化而变化
一个Pojo 持久化以后就是Po;直接用它传递,传递过程中是Dto;
阿里手册中,pojo专指只有 setter/getter/toString的简单类,包括Do/Dto/Bo/Vo
Query 数据查询对象
各层接收上层的查询请求。
注意:超过2个参数的查询封装,禁止使用Map类传输。
命名规范:
数据对象: xxxDO, xxx 即为数据表名。
数据传输对象:xxxDTO,xxx 为业务领域相关的名称
展示对象:xxxVO,xxx一般为网页名称
POJO 是DO/DTO/BO/VO 的统称,禁止命名成 xxxPOJO。