EJB学习(四)——Enterprise Bean(企业Bean)和Entity Bean(实体Bean)
一、为什么使用EJB ?
企业Bean执行在EJB容器中。企业Bean实际上就是一个封装了业务逻辑的Java类,那么我们为什么要使用EJB呢 ?
1.最重要的原因:分布式。简要的说,分布式能够将分布在各处的资源综合利用,可是对于用户来说展现的是一个统一的总体;分布式能够动态分配任务,分散物理的和逻辑的资源。从而提高运行效率;分布式技术能够避免因为单个节点失效而使整个系统崩溃的危急。
2.分布式对象之间的事务支持,RMI(Remote
Method Invocation,远程方法调用)不支持事务。
3.支持不同的client,仅仅要少量代码。就能够让远程client訪问到企业Bean。
二、EJB的基本分类
1.Session Bean
即会话Bean。能够运行业务逻辑操作。如注冊用户、订单登记等。
问:什么是会话?
答:即从client获得EJB对象開始,然后调用EJB的方法(能够多次),直到client声明周期结束或client释放了EJB对象为止,称为一次会话。
问:Stateful Session Bean 和Stateless
Session Bean有什么差别?
答:Stateful
Session Bean 即有状态的Session Bean,Stateless Session Bean即无状态的Session Bean。所谓的有状态和无状态,是由Session Bean的成员变量决定的。
·Stateful Session Bean:即EJB可以为同一个client在多次请求(方法调用)之间保持状态信息。
·Stateless Session Bean:并不是是说EJB不能存在状态,而是说EJB容器不会对EJB的状态做管理。
简言之,有状态的Session Bean,即client每次请求都会创建一个新的对象;
无状态的Session Bean,就是client每次请求都訪问的一个对象。
2.Message Driven Bean
Service。 简称 JMS) 是企业级消息传递系统, 紧密集成于 Jboss Server 平台之中。
企业消息传递系统使得应用程序可以通过消息的交换与其它系统之间进行通信。
MDB 将异步处理客户请求。
3.Entity Bean
持久化是位于 JDBC 之上的一个更高层抽象。持久层将对象映射到数据库,以便在查询、 装载、 更新, 或删除对象的时候, 无须使用像 JDBC 那样繁琐的 API。
在 EJB 的早期版本号中。持久化是 EJB 平台的一部分。
从 EJB 3.0開始, 持久化已经自成规范,
被称为 Java Persistence API。
Java Persistence API 定义了一种方法,能够将常规的普通 Java 对象(有时被称作 POJO)映射到数据库。 这些普通 Java 对象被称作 Entity Bean。
EJB学习(四)——Enterprise Bean(企业Bean)和Entity Bean(实体Bean)的更多相关文章
- EJB学习笔记
1 J2ee概述 J2ee是企业级的计算平台,它为分布式和基于组件的软件开发提供了一个“操作系统” Ant是什么工具?? EJB: 什么是EJB? 是一种server端组件结构,简化了开发分布式企 ...
- EJB学习
EJB:企业级JavaBean(Enterprise JavaBean, EJB)是一个用来构筑企业级应用的服务器端可被管理组件. EJB主要有三种Bean: Session Beans: 会在单个特 ...
- [spring源码学习]四、IOC源码——普通bean初始化
一.代码例子 此节开始涉及到一个bean具体生成和保存的过程,仅仅涉及到最简单的bean,代码依旧是最简单的 public static void main(String[] args) { Defa ...
- [原创]java WEB学习笔记99:Spring学习---Spring Bean配置:自动装配,配置bean之间的关系(继承/依赖),bean的作用域(singleton,prototype,web环境作用域),使用外部属性文件
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- J2EE的十三个技术——EJB之实体Bean
概述: 实体Bean与会话Bean不同,实体Bean是持久的,即使应用程序结束,它仍然存在.它允许共享访问,具有主键. 组成: 1)本地(Local)接口 本地访问EJB,只有在EJB与客户在同一个应 ...
- Spring 学习笔记 3. 尚硅谷_佟刚_Spring_配置 Bean
1,bean 的配置 <bean id="helloWorld" class="com.yfy.HelloWorld"> <property ...
- spring深入学习(二)-----bean的生命周期、IOC容器bean装配
bean的生命周期 1.实例化Bean对于BeanFactory容器,当客户向容器请求一个尚未初始化的bean时,或初始化bean的时候需要注入另一个尚未初始化的依赖时,容器就会调用createBea ...
- 我的EJB学习历程
http://blog.csdn.net/sinapaper/archive/2004/06/28/28659.aspx http://blog.csdn.net/sinapaper/archive/ ...
- 持久化API(JPA)系列(三)实体Bean的开发技术-建立与数据库的连接
在EJB 2.x中.EJB有3种类型的Bean.各自是会话Bean(Session Bean).消息驱动Bean(Message-Driven Bean)和实体Bean(Entity Bean). 随 ...
- EJB_开发单表映射的实体bean
开发单表映射的实体bean 实体bean 它属于java持久化规范(JPA)里的技术,实体bean通过元数据在Javabean和数据库表之间建立起映射关系,然后Java程序员就可以随心所欲的使用面向对 ...
随机推荐
- vue组件的3种书写形式
第一种使用script标签 <!DOCTYPE html> <html> <body> <div id="app"> <my- ...
- actionbarsherlock示例
package com.example.viewpagerandtabdemo; import java.util.ArrayList; import java.util.List; import a ...
- Wannafly挑战赛25 A 因子 数学
题面 题意:令 X = n!,给定一大于1的正整数p,求一个k使得 p ^k | X 并且 p ^(k + 1) 不是X的因子,n,,p(1e18>=n>=1e4>=p>=2) ...
- 前后端分离开发,基于SpringMVC符合Restful API风格Maven项目实战(附完整Demo)!
摘要: 本人在前辈<从MVC到前后端分离(REST-个人也认为是目前比较流行和比较好的方式)>一文的基础上,实现了一个基于Spring的符合REST风格的完整Demo,具有MVC分层结构并 ...
- C++数字图像处理(1)-伽马变换
https://blog.csdn.net/huqiang_823/article/details/80767019 1.算法原理 伽马变换(幂律变换)是常用的灰度变换,是一种简单的图像增强算法 ...
- JavaScrip——插入地图
具体操作步骤:1.百度搜索:百度地图生成器 2.打开第一个,复制网址http://api.map.baidu.com/lbsapi/creatmap/index.html,打开3.页面显示为 4.根据 ...
- 原型模式(Prototype)C++实现
意图:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象. 实用性:1.当要实例化的类是在运行时刻指定时. 2.为了避免创建一个与产品类层次平行的工厂类层次时. 3.当一个类的实例只能有几 ...
- Java集合(一)HashMap
HashMap 特点: HashMap的key和value都允许为空,无序的,且非线程安全的 数据结构: HashMap底层是一个数组,数组的每一项又都是链表,即数据和链表的结合体.当新建一个Hash ...
- 深入ES6 模块系统
深入ES6 模块系统 本文转载自:众成翻译 译者:neck 链接:http://www.zcfy.cc/article/4436 原文:https://ponyfoo.com/articles/es6 ...
- 【Oracle】DBA_AUDIT_TRAIL表SES_ACTIONS字段对应的操作列表
SES_ACTIONS字段共包含16个字符,初始状态都为“-”,当被审计的对象被操作后,SES_ACTIONS会在相应的位置作出标识,标识为“S”的代表操作成功,标识为“F”的代表操作失败,16个位置 ...