POJO
产生原因
作为数据存储载体,只用于装载数据
,不处理业务逻辑。
是Martin Fowler、Rebecca Parsons和Josh MacKenzie在2000年的一次演讲的时候提出来的。
定义
“Plain Old Java Object”,即“简单的java对象”或“普通java对象”
特点
-
普适性
对任何框架和约定没有依赖。理想地讲,一个POJO是一个不受任何限制的Java对象(除了Java语言规范)。
为此,其编写要求为,一个POJO不应该是
- 扩展预定的类,如 public class Foo extends javax.servlet.http.HttpServlet { …
- 实现预定的接口,如 public class Bar implements javax.ejb.EntityBean { …
- 包含预定的标注,如 @javax.ejb.Entity public class Baz{ …
JavaBean
产生原因
将可以重复使用某项功能
的软件代码打包。
定义
用于实现某项功能的可重用组件。一般而言,这些类需要符合Sun定义的一系列规范。
不是一种技术,而是一种规范
特点
-
可重用
JavaBean是为了重复使用的程序段落具有“Writeonce, run anywhere, reuse everywhere”,即一次性编写,任何地方执行,所有地方可重用
的特点。开发者可以直接复用别人写好软件组件而不必理解它内部的工作机制。为此,其编写要求为:
(1)所有的JavaBean必须放在一个包(Package)中。
(2)JavaBean必须生成public class类,文件名称应该与类名称一致。
(3)所有属性必须封装,一个JavaBean类不应有公共实例变量,类变量都为private。
(4)属性值应该通过一组存取方法(getXxx 和 setXxx)来访问:对于每个属性,应该有一个带匹配公用getter 和 setter方法的专用实例变量。
(5)Java Bean 类必须有一个空的构造函数:类中必须有一个不带参数的公用构造器,此构造器也应该通过调用各个属性的设置方法来设置属性的默认值。因为 Java Bean 是被容器所创建(如 Tomcat) 的。
区别和联系
POJO可以看做是简化的JavaBean
参考文献
https://blog.csdn.net/litong09282039/article/details/46888169 Java Bean 简介及其应用
https://www.cnblogs.com/zhangminghui/p/4889761.html Java 之JavaBean 、EJB 和POJO - 博客
https://blog.csdn.net/caomiao2006/article/details/19824881 POJO JAVABEAN EJB的区别和联系 - CSDN
https://www.cnblogs.com/yw-ah/p/5795751.html JAVABEAN EJB POJO区别 - 博客