作为程序员,尤其是从事JAVA开发的程序员,相信大家一定会经常遇到这两个名词,那么你们知道这两个名词的具体含义吗?


javabean包括什么组件(POJO与JavaBean的区别你知道吗)(1)


下面我们来一起讨论下:

POJO(Plain Ordinary Java Object)即普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO。

实际意义就是普通的Javabeans(简单的实体类),特点就是支持业务逻辑的协助类。
POJO类的作用是方便程序员使用数据库中的数据表,对于程序员来说,可以很方便的将POJO类当作对象来进行使用,也可以方便的调用其get,set方法。
但不允许有业务方法,也不能携带有connection之类的方法,即不包含业务逻辑或持久逻辑等。

javabean包括什么组件(POJO与JavaBean的区别你知道吗)(2)

按着Sun公司的定义,JavaBean是一个可重复使用的软件组件。实际上JavaBean是一种Java类,通过封装属性和方法成为具有某种功能或者处理某个业务的对象,简称bean。
JavaBean 是一种JAVA语言写成的可重用组件。它的方法命名,构造及行为必须符合特定的约定:
这个类必须有一个公共的无参构造函数。
这个类的属性使用getter和setter来访问,其他方法遵从标准命名规范。(属性为私有并且有对应的getter和setter方法)
这个类应是可序列化的。
因为这些要求主要是靠约定而不是靠实现接口,所以许多开发者把JavaBean看作遵从特定命名约定的POJO。

javabean包括什么组件(POJO与JavaBean的区别你知道吗)(3)

JavaBean的任务就是: “Write once, run anywhere, reuse everywhere”,即“一次性编写,任何地方执行,任何地方重用”。
JavaBean可分为两种:一种是有用户界面(UI,User Interface)的JavaBean;还有一种是没有用户界面,主要负责处理事务(如数据运算,操纵数据库)的JavaBean。JSP通常访问的是后一种JavaBean。
简而言之,当一个POJO有一个无参的构造函数、可序列化、使用getter和setter方法来访问属性时,他就是一个JavaBean。

以上就是个人通过查阅相应的资料资源学习后,对于JavaBeans与POJO的理解。如有不当之处,还请各位大佬指教!

一块学习,共同进步!

,