EJB经典面试题目汇总

  1:EJB:

  答: Enterprise Java Bean 相当于DCOM,即分布式组件。它是基于Java的远程方法调用(RMI)技术的,所以EJB可以被远程访问 (跨进程、跨计算机) 。但EJB必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是EJB组件的代理,EJB组件由容器所创建和管理。客户通过容器来访问真正的EJB组件。

  答:Enterprise java bean 容器。更具有行业领域特色。他提供给运行在其中的组件EJB各种管理功能。只要满足J2EE规范的EJB放入该容器,马上就会被容器进行高效率的管理。并且可以通过现成的接口来获得系统级别的服务。例如邮件服务、事务管理。

  2:EJB种类、作用

  答: Entity Bean——用于描述一个永久的对象。

  Session Bean——描述任务或者工作流的模型,并且协调Bean之间的交互。

  Message-Driver Bean——用在基于J2EE应用程序中处理异步JMS消息。

  3:实体bean,CMP,BMP写法区别?

  答:CMP entity bean不需要在 bean中编写数据库操作的代码;可以让容器做这件事。

  BMP entity bean在bean类中直接编写数据库调用,以及对固定存储的任意类型的访问,来管理bean的持久性。

  4:主接口方法的定义与写法?

  答: 生命周期方法 建方法-该方法的返回值是bean的组件接口,写法为creatXxx

  无状态session bean必须个且仅有一个无参的创建方法.

  有状态session bean必须含有至少一个创建方法.Entity bean可以有0至多个创建方法.

  Finder方法-Finder方法对于entity bean有效,通过它可以在数据库中查找到entity bean对应的持久性数据.每一个entity bean的home接口必须有一个findByPrimaryKey方法,并以实体的主键为参数.可以定制Finder方法.Home方法-Home方法也仅对entity bean有效.Home方法能够返回任意类型的序列化对象,但并不实际生成bean的实例.

  5:主接口与组件接口的区别?

  答: 主接口提供EJB客户端对bean的访问.定义了bean的生命周期方法,并提供了bean的基本生命周期管理功能,如创建,删除,查找.message drivern bean不含有home接口.组件接口是由enterprise bean的客户端用来取得bean的访问能力.它定义了对于客户端可见的业务方法.组件接口中的业务方法必须符合bean类中的实现.

  6:JMS消息传递的方式?

  答: 点到点(point-to-point)消息通过队列进行发送.发布与订阅(publish-and-subscribe,pub/sub)消息通过标题传递.

  7:事务属性ACID

  答:原子性—— 一个事务要么完全执行,要么根本不执行。

  一致性—— 一个事务在它完成后不能留下系统的不一致性。

  隔离性—— 所有的事务不许允许在执行的时候不受其他进程或者事务的干涉。

  持久性—— 在事务期间,所有提交的变更数据必须写入持久的数据存储器,并且应该能在硬件和软件失效中保存下来。

  8:实体Bean的三个状态:

  答: no-state——Bean实例还没有创建。

  pooled ——Bean实例被创建,但还没有和一个EJB Object关联。

  ready ——与EJB Object相关联。若断开关联则回到pooled。

  

本文已影响6827
上一篇:Java Web工程师面试笔试题 下一篇:数据库经典面试题目

相关文章推荐

|||||