POJO与JavaBean
1.POJO(Plain Ordinary Java Object)
简单的Java对象,没有任何类继承,没有实现任何接口,没有使用注解被其他框架侵入的java对象。
2.POJO与JavaBean的对比
POJO主要用于数据的临时传递,只能装数据,作为数据传递的载体,不具有业务逻辑处理的能力。
JavaBean数据的获取与POJO一样,都是通过get,set,但它可以有其他的方法。
3.JavaBean
是一个java写的可重用组件,其方法命名,构造及行为必须满足特定约定:
(1)必须有一个public default缺省的(无参)构造函数:因为通常JavaBean是由容器如Tomcat所创建的,所以要有无参构造器
(2)属性使用getter与setter方法访问,其他方法符合命名规范
(3)这个类应是可序列化的serialisable:用于Bean的持久化
4.详解
POJO为了与EJB(Enterprise JavaBean 企业JavaBean进行区分,没有业务逻辑,用getter与setter访问,有时作为vo或dto来使用。
有时作为Data对象,或使用Hibernate框架,映射的xml文件,使对象与数据库一一对应,对象属性与表中字段对应。
POJO与JavaBean易混淆,POJO比较纯净;JavaBean比较复杂,是可复用组件,没有明确的规范,任何一个Java类都可以是一个Bean。
5.阿里的Do,DTO,BO,AO,VO,POJO定义
模型约定:
(1)DO(Data Object):与数据库表结构一一对应,通过Dao层向上传输数据源对象。
(2)DTO( Data Transfer Object):数据传输对象,Service向外传输的对象。
(3)BO( Business Object):业务对象,由Service层输出的封装业务逻辑的对象。
(4)AO( Application Object):应用对象, 在Web层与Service层之间抽象的复用对象模型,极为贴近展示层,复用度不高。
(5)VO( View Object):显示层对象,通常是Web向模板渲染引擎层传输的对象。
(6)POJO( Plain Ordinary Java Object):阿里中,POJO专指只有setter/getter/toString的简单类,包括DO/DTO/BO/VO等。
命名约定:
(1)数据对象:xxxDO,xxx即为数据表名。
(2)数据传输对象:xxxDTO,xxx为业务领域相关的名称。
(3)展示对象:xxxVO,xxx一般为网页名称。
(4)POJO是DO/DTO/BO/VO的统称,禁止命名成xxxPOJO。
本文参考自:
https://www.cnblogs.com/EasonJim/p/7967999.html
https://www.cnblogs.com/weiyi1314/p/6672278.html

浙公网安备 33010602011771号