分布式系统练习题(J2EE)
题型:判断(10)、简答(5)、编程(4)、主观题(3)
一、简答题
简述远程方法调用(Remote Method Invocation,RMI)的基本通信原理。
答::远程方法调用(RMI)的基本通信原理:
客户端与服务器端内在通过套接字通信。
服务器端
1、创建远程服务对象
2、接收请求、执行并返回结果(Skeleton)
1)解码(读取)远程方法的参数;
2)调用实际远程对象实现的方法;
3)将结果(返回值或异常)返回给调用程序。
客户端
1、建立与服务器的连接
2、发送请求、接收返回结果(Stub)
1)初始化连接;
2)编码并发送参数;
3)等待方法调用结果;
4)解码(读取)返回值或返回的异常;
5)将值返回给调用程序。
简述远程方法调用(Remote Method Invocation,RMI)的编程模型(主要编程步骤)。
答:远程方法调用(RMI)的编程步骤:
1)定义远程接口;
2)定义远程对象/服务;
3)定义客户应用,并与远程对象通信;
4)调用远程方法(参数及返回值)。
简述BMP实体Bean与CMP实体Bean的优缺点。
答:1、编程方面CMP比BMP简单
BMP需要通过Bean代码实现数据库的操作;CMP则只需要做相关的映射就可以了。
2、功能方面BMP比CMP强大
CMP一般用于单表操作;BMP则可用于单表和多表操作。
(要求阐述客户端调用finder方法时EJB容器调用Bean方法的过程)。
答:(容器调用机制)
(1)ejbCreate,若返回异常,则结束,否则转2
(2)ejbActivate
(3)ejbPostCreate
(4)ejbStore
(5)返回结果
...
(1)ejbFind....,若返回异常,则结束,否则转2
(2)对(1)返回的结果集,逐个处理(3-5)
(3)若对象已经存在于容器内存中,则直接使用,否则转4
(4)从Pool中取一个空闲对象,调用ejbActivate与主键值关联
(5)调用ejbLoad方法
(6)返回结果
简述无状态会话Bean的生命周期(图示或文字描述均可)。
答:无状态会话Bean的生命周期如下图所示:
简述有状态会话Bean的生命周期(图示或文字描述均可)。
答:有状态会话Bean的生命周期如下图所示:
简述EJB (图示或文字描述均可)。
答:实体Bean的生命周期如下图所示:
简述EJB 、Home接口和Bean实现类的作用。
答:1、远程接口的作用:定义客户机可以调用的商业方法。
2、Home接口的作用:定义客户机可调用的Create上客户机实例化所需的对象EJB。
3、Bean实现类的作用:Bean具体实现的功能。
二、编程题
,i 数列第n项的求解(要求使用非递归方法实现)。已知Remote接口和Home接口代码如下:
/*Remote接口代码*/
import ;
import ;
public interface i extends EJBObject{
//i数列第n项的值(n的索引从1开始)
public long iItem(int n) throws RemoteException;
}
/*Home接口代码*/
import ;
import .*;
public interface iHome extends EJBHome{
public i create() throws RemoteException,CreateException;
}
/*EJB实现类代码*/
import ;
import ;
import ;
public class iEJB implements SessionBean {
SessionContext sessionContext;
//远程接口的方法
public long iItem(int
分布式系统复习题(chen) 来自淘豆网m.daumloan.com转载请标明出处.