Javabean EJB POJO

今天看 Spring框架,但先要搞清楚几个概念。网上查了一下大概摘抄如下:

POJO(Plain Old Java Object)这个名字用来强调它是一个普通java对象,而不是一个特殊的对象。

2005年11月时,“POJO”主要用来指代那些没用遵从特定的Java对象模型,约定或框架如EJB的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{ ...
然后,因为技术上的困难及其他原因,许多兼容POJO风格的软件产品或框架事实上仍然要求使用预定的标注,譬如用于更方便的持久化。

JavaBean 是一种JAVA语言写成的可重用组件。它的方法命名,构造及行为必须符合特定的约定:
这个类必须有一个公共的缺省构造函数。
这个类的属性使用getter和setter来访问,其他方法遵从标准命名规范。
这个类应是可序列化的。
因为这些要求主要是靠约定而不是靠实现接口,所以许多开发者把JavaBean看作遵从特定命名约定的POJO。

简而言之,当一个Pojo可序列化,有一个无参的构造函数,使用getter和setter方法来访问属性时,他就是一个JavaBean。

Enterprise Bean 与 JavaBean 不同。JavaBean 是使用 java.beans 包开发的,它是 Java 2 标准版的一部分。JavaBean 是一台机器上同一个地址空间中运行的组件。JavaBean 是进程内组件。Enterprise Bean 是使用 javax.ejb 包开发的,它是标准 JDK 的扩展,是 Java 2 Enterprise Edition 的一部分。Enterprise Bean 是在多台机器上跨几个地址空间运行的组件。因此 Enterprise Bean 是进程间组件。JavaBean 通常用作 GUI 窗口小部件,而 Enterprise Bean 则用作分布式商业对象。

首先,EJB是指运行在EJB容器中的JavaBean。Tomcat是Web容器的参考实现。一个完整的JavaEE服务器应该包括Web容器和EJB容器。其次,Web容器中无法运行EJB,同时所有的JavaBean都是在服务器端运行的。如果有在客户端的话,就变成c/s结构了。除非需要分布式处理,不然基本上不需要考虑EJB。Spring能帮你处理好除分布计算之外的一切。现在的JavaEE系统分这么几个层,表现层(Struts、JSF等)+应用层(处理业务,可以是JavaBean也可以是EJB)+持久层(JDBC、Hibernate)

最后都推荐这本早有耳闻的 《领域驱动设计》

时间: 2024-10-12 15:58:35

Javabean EJB POJO的相关文章

理解 JAVABEAN EJB POJO

<Spring实战>第一章:基本理念.各类名称熟语 POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称. 使用POJO名称是为了避免和EJB混淆起来, 而且简称比较直接. 其中有一些属性及其getter setter方法的类,没有业务逻辑,有时可以作为VO(value -object)或dto(Data Transform Object)来使用.当然,如果你有一个简单的运算属性也是可以的,但不允

2016.5.26 随笔————JavaBean、POJO、EJB的概念

大概知道这些指的是什么,但是比较模糊,所以总结一下: 1. 发展历程 java1996年发布,当年12月就发布了javabean 1.00-A 作用是:通过统一的规范可以设置对象的值(get,set的方法),这是最初的java bean. 实际企业开发中,需要实现事务.安全.分布式,那么javabean就不好用了. Sun公司开始往里面堆功能,这里的javabean就复杂为EJB 所以EJB 英文为 Enterprise java bean EJB功能强大,但是太重了. 此时出现DI(依赖注入)

JavaBean,POJO,VO,DTO的区别和联系

JavaBean 是一种JAVA语言写成的可重用组件.为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器.JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性.众所周知,属性名称符合这种模式,其他Java 类可以通过自身机制发现和操作这些JavaBean 的属性. VO即value object值对象主要体现在视图的对象,对于一个WEB页面将整个页面的属性封装成一个对象.然后用一个VO对象在控制层与视图层进行传输交换. DTO (经过处理后的PO,可能增

JavaEE MyBatis

1.  简介 MyBatis本是apache的一个开源项目iBatis的升级版,2013年11月迁移到Github,是三层架构中持久层框架. 目前提供了Java..NET.以及Ruby三种语言实现的版本. 2.  提供一种“半自动化”的ORM实现.这种半自动化是相对Hibernate等提供了全面的数据库封装机制的“全自动化”ORM实现而言,“全自动”ORM实现了POJO和数据库表之间的映射,以及SQL的自动生成和执行:而MyBaits的着力点,则在于POJO与SQL之间的映射关系. 3.  Ja

Java 之JavaBean 、EJB 和POJO

由于是创业公司,开发人员较少,所以公司临时决定让几个C的程序猿临时客串Java.所以避免不了有很多基础问题,今天就有两个人都问我,JavaBean和POJO的区别,我可按照自己的理解给他们大致说了下,可是仔细一推敲发现自己好像没有那么透彻的讲解很清楚,就查了下资料,记下了一些笔记和理解. 1.JavaBean JavaBean是可复用的Java组件,严格遵循Sun定义的规范要求,JavaBean是一个标准.简单来说一个JavaBean应该有下面几个特点, >类应该是public的 >属性应该p

POJO、JAVABEAN、*O、EJB

POJO: 全称:Plain Old Java Object 解释:纯洁老式的java对象.从任何类继承.也没有实现任何接口,更没有被其它框架侵入的java对象 理解:通常我们常说的实体类 BEAN: 理解:个人理解为javabean 或者 ejb 的的缩写 关于spring bean :https://www.cnblogs.com/zedosu/p/6514934.html JAVABEAN: 解释: JavaBean 是一种JAVA语言写成的可重用组件.JavaBean符合一定规范编写的J

POJO与JavaBean的区别

POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称. 使用POJO名称是为了避免和EJB混淆起来, 而且简称比较直接. 其中有一些属性及其getter.setter方法的类,没有业务逻辑,有时可以作为VO(value -object)或dto(Data Transform Object)来使用.当然,如果你有一个简单的运算属性也是可以的,但不允许有业务方法,也不能携带有connection之类的方

pojo和javabean的区别

POJO 和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Pure Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多, Java Bean 是可复用的组件,对 Java Bean 并没有严格的规范,理论上讲,任何一个 Java 类都可以是一个 Bean .但通常情况下,由于 Java Bean

POJO 和JavaBean的区别

POJO 和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Pure Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多, Java Bean 是可复用的组件,对 Java Bean 并没有严格的规范,理论上讲,任何一个 Java 类都可以是一个 Bean .但通常情况下,由于 Java Bean