分别介绍一下Session Bean和Entity Bean


Posted in 面试题 onMarch 13, 2015
Session beans:
Session beans 是一种作为单个的client执行的对象。作为对远程的任务请求的相应,容器产生一个Session beans 的实例。一个Session beans有一个client.从某种程度上来说,一个Session bean 对于服务器来说就代表了它的那个client.Session beans 也能用于事务,它能够更新共享的数据,但它不直接描绘这些共享的数据。

Session beans 的生命周期是相对较短的。典型的是,只有当client保持会话的时候,Session beans 才是活着的。一旦client退出了,Session beans 就不再与client相联系了。Session beans被看成是瞬时的,因为如果容器崩溃了,那么client必须重新建立一个新的Session对象来继续会话。

一个Session bean典型的声明了与client的互操作或者会话。也就是说,Session bean了在客户会话期间,通过方法的调用,掌握Client的信息。一个具有状态的Session bean称为有状态的Session bean.当client终止与Session beans互操作的时候.会话终止了,而且,bean 也不再拥有状态值。

一个Session bean也可能是一个无状态的 session bean.无状态的Session beans并不掌握它的客户的信息或者状态。Client能够调用beans的方法来完成一些操作。但是,beans只是在方法调用的时候才知道client的参数变量。当方法调用完成以后,beans并不继续保持这些参数变量。这样,所有的无状态的session beans的实例都是相同的,除非它正在方法调用期间。这样,无状态的Session beans就能够支持多个client.容器能够声明一个无状态的Session beans.能够将任何Session beans指定给任何client.

Entity Beans:
Entity Beans对数据库中的数据提供了一种对象的视图。例如:一个Entity bean能够模拟数据库表中一行相关的数据。多个client能够共享访问同一个Entity bean.多个client也能够同时的访问同一个Entity bean.Entity beans通过事务的上下文来访问或更新下层的数据。这样,数据的完整性就能够被保证。

Entity Beans能存活相对教长的时间,并且状态是持续的。只要数据库中的数据存在,Entity beans就一直存活。而不是按照应用程序或者服务进程来说的。即使EJB容器崩溃了,Entity beans也是存活的。Entity Beans生命周期能够被容器或者 Beans自己管理。如果由容器控制着保证 Entity beans持续的issus。如果由Beans自己管理,就必须写Entity beans的代码,包括访问数据库的调用。

Entity Beans是由主键(primary key 一种唯一的对象标识符)标识的。通常,主键与标识数据库中的一块数据,例如一个表中的一行,的主键是相同的。主键是client能够定位特定的数据块。

Tags in this post...

面试题 相关文章推荐
static关键字的用法
Oct 07 面试题
serialVersionUID具有什么样的特征
Feb 20 面试题
"火柴棍式"程序员面试题
Mar 16 面试题
Android interview questions
Dec 25 面试题
天游软件面试
Nov 23 面试题
一套带网友答案的.NET笔试题
Dec 06 面试题
敏捷开发的主要原则都有哪些
Apr 26 面试题
启动一个线程是用run()还是start()
Dec 25 面试题
Java语言程序设计测试题判断题部分
Jan 06 面试题
Java中采用什么结构来捕获、处理异常?各子句的顺序、功能如何
Oct 07 面试题
UNIX特点都有哪些
Apr 05 面试题
EJB2和EJB3在架构上的不同点
Sep 29 #面试题
比较一下entity bean和session bean
Dec 27 #面试题
介绍一下RMI的基本概念
Dec 17 #面试题
JSP和EJB可以共享HttpSession么?EJB里面可以改变session里面的内容
Jun 05 #面试题
敏捷开发的主要原则都有哪些
Apr 26 #面试题
什么是规则表达式
May 03 #面试题
软件设计的目标是什么
Dec 04 #面试题
You might like
php下尝试使用GraphicsMagick的缩略图功能
2011/01/01 PHP
PHP中使用SimpleXML检查XML文件结构实例
2015/01/07 PHP
php中数据库连接方式pdo和mysqli对比分析
2015/02/25 PHP
PHP使用Pthread实现的多线程操作实例
2015/11/14 PHP
PHP自定义函数实现格式化秒的方法
2016/09/14 PHP
使用正则去除php代码中的注释方法
2016/11/03 PHP
基于CI框架的微信网页授权库示例
2016/11/25 PHP
Gird组件 Part-3:范例RSSFeed Viewer
2007/03/10 Javascript
js Flash插入函数免激活代码
2009/03/31 Javascript
jQuery插件expander实现图片翻转特效
2015/05/21 Javascript
javascript与Python快速排序实例对比
2015/08/10 Javascript
js运动应用实例解析
2015/12/28 Javascript
浏览器复制插件zeroclipboard使用指南
2016/03/26 Javascript
JQuery的attr 与 val区别
2016/06/12 Javascript
JQuery 设置checkbox值二次无效的解决方法
2016/07/22 Javascript
javascript字符串对象常用api函数小结(连接,替换,分割,转换等)
2016/09/20 Javascript
浅谈js控制li标签排序问题 js调用php函数的方法
2016/10/16 Javascript
基于JavaScript实现右键菜单和拖拽功能
2016/11/28 Javascript
jQuery动态操作表单示例【基于table表格】
2018/12/06 jQuery
详解微信小程序胶囊按钮返回|首页自定义导航栏功能
2019/06/14 Javascript
原生js实现的移动端可拖动进度条插件功能详解
2019/08/15 Javascript
基于layui的table插件进行复选框联动功能的实现方法
2019/09/19 Javascript
如何使用 JavaScript 操作浏览器历史记录 API
2020/11/24 Javascript
Python中使用copy模块实现列表(list)拷贝
2015/04/14 Python
Python中类型检查的详细介绍
2017/02/13 Python
python发送邮件实例分享
2017/07/28 Python
Python中用字符串调用函数或方法示例代码
2017/08/04 Python
Python实现求解一元二次方程的方法示例
2018/06/20 Python
cProfile Python性能分析工具使用详解
2019/07/22 Python
Python使用enumerate获取迭代元素下标
2020/02/03 Python
会计电算化专业应届大学生求职信
2013/10/22 职场文书
国际会议邀请函范文
2014/01/16 职场文书
医学生求职自荐书
2014/06/12 职场文书
创业计划书之酒店
2019/08/30 职场文书
导游词之白茶谷九龙峡
2019/10/23 职场文书
动画《平凡职业成就世界最强》宣布制作OVA
2022/04/01 日漫