J2EE(自测练习)

j2me_home 2005-05-24 09:32:40
二十一、判断下列各个语句是否正确。如果不正确。请说明原因。
a)在试图将远程对象绑定到注册程序之前,没有启动RMI注册程序将产生RuntimeException异常,从而拒绝连接到注册程序。
答:不正确。将产生java.rmi.ConnectException异常。
b)每个远程方法都必须是扩展java.rim.Remote接口的成员方法。
答:正确。
c)stubcomplier程序负责建立存根类,以完成允许客户端连接到服务器并使用远程对象方法的联网工作。
答:不正确。rmic编译器负责建立存根类。
d)UnicastRemoteObject类提供远程对象所需的基本功能。
答:正确。
e)实现Serializable接口的类对象能注册为远程对象,并接收远程方法调用。
答:不正确。实现java.rmi.Remote的子接口的类对象可以注册为远程对象,并接收远程方法调用。
f)Remote接口的所有方法都必须包含一个throws子句,提示可能抛出RemoteException异常。
答:正确。
g)RMI客户端试图通过RMI注册程序定位远程对象时,客户端假定要连接到服务器的80端口上。
答:不正确。RMI客户端的默认使用端口1099,Web服务器的客户端默认使用80端口。
h)一旦远程对象使用Naming类的bind或rebind方法绑定到RMI注册程序上,客户端就能通过Naming类的lookup方法查找到该远程对象。
答:正确。
i)Naming类的find方法与RMI注册程序进行交互,帮助客户端获得远程对象的引用,这样客户端就可以使用该远程对象的服务。
答:不正确。lookup方法与RMI注册程序进行交互,帮助客户端获得远程对象的引用。
二十二、简答
1、会话EJB主要分为哪两种类型?它们的主要区别是什么?
答:会话EJB分为有状态的会话EJB和无状态的会话EJB。在与客户的一次会话过程中,有状态的会话EJB可以保存应用方法调用之间的状态信息。无状态的会话EJB不保存应用方法调用之间的信息。
2、EJB开发人员必须为每个EJB提供哪三种类型的Java对象?
答:EJB开发人员必须提供一个远程接口、一个本地接口和相应的EJB实现。
3、EJB容器的任务是什么?
答:EJB容器负责管理EJB的生命周期。EJB容器创建实现本地接口和远程接口的Java类,同时代理EJB实现(开发人员支持的)的应用方法的调用。除了生命周期的管理之外,EJB容器还提供运行时的资源管理,比如数据库连接的事务处理等。
4、客户怎样得到一个EJB实例的远程引用?
答:客户在JNDI目录服务中查找EJB的本地接口。对于会话EJB,客户调用本地接口中的create方法;而对于实体EJB,则客户则调用本地接口中的create方法或查找方法。
5、EJB可以使用哪些类型的事务划分方法?它们各自的优势是什么?
答:EJB可以使用bean管理事务划分或者容器管理事务划分。bean管理事务划分允许开发人员精确地定义事务的边界。而容器管理事务划分则简化了EJB的实现,由EJB的部署者在部署EJB时声明事务的边界。
二十三、判断下列各个语句是否正确。如果不正确,请说明原因。
a)与一个典型的实体EJB相关联的数据存储在一个关系数据库中。
答:正确。
b)实体EJB的远程接口表示了与它相关联的数据库表格。
答:不正确。远程接口声明EJB的应用方法,本地接口表示数据库表格。
c)使用bean管理持久性的实体EJB要求部署者指定对数据库进行插入、更新、删除和查询的SQL语句。
答:不正确。开发人员必须提供与数据库进行数据同步的实现代码。
d)实体EJB的本地接口的create方法会在底层数据库中插入一个新的记录。
答:正确。
e)实体EJB会在ejbCreate中获得必需的资源。
答:不正确。实体EJB会在setEntityContext方法中获得必需的资源。
f)使用容器管理持久性的实体EJB必须实现CMPEntityBean的接口,而使用bean管理持久性的实体EJB则必须实现EntityBean。
答:不正确。所有的实体EJB必须实现EntityBean接口。
二十四、填空
a)为了让使用容器管理持久性的实体EJB能表示关系数据库中的数据,部署者必须在部署EJB时指定SQL语句。
b)为了让使用bean管理持久性的实体EJB能表示关系数据库中的数据,开发人员必须实现与数据库进行数据同步的代码。
c)本地接口中的每个create方法必须在EJB实现中具有对应的ejbCreate方法。
d)如果一个实体EJB具有一个复合主键,则开发人员必须提供一个定义的主键类来表示这个复合主键。
二十五、判断下列各个语句是否正确。如果不正确,请说明原因。
a)点对点模型中的消息期望有零个或多个接收方。
答:不正确。点对点模型中的消息期望有一个接收方。
b)在发布/订阅模型中的消息期望有零个或一个接收方。
答:不正确。在发布/订阅模型中的消息期望有零个或多个接收方。
c)如果指定了一个消息选择器,那么过滤消息的过程在服务器方完成。
答:正确。
d)如果没有任何订阅者,则服务器会保留发布到主题上的消息,直到创建了一个订阅过程。
答:不正确。如果当前没有激活订阅过程,则服务器不会保留到来的消息;但是如果有一个非活动的持久的订阅过程,则服务器会为它保留信息。
e)如果没有接收者,则服务器会保留发送的消息队列中的消息,直到有一个接收者连接上。
答:正确。
f)消息驱动bean为特定的客户保留状态信息。
答:不正确。一个消息驱动bean实例可以为多个客户处理消息,它不能保留客户的状态信息。
二十六、填空
a)两种消息模型分别是点对点和发布/订阅。
b)在点对点消息模型中,客户向消息队列发送一条消息并期望该消息被一个接收者接收。
c)在发布/订阅消息模型中,客户向主题发送一条消息并期望该消息被零个或多个接收者接收。
d)如果当时订阅过程没有激活,则服务器会为持久的订阅保留消息。
e)消息驱动bean是一种企业级bean,可以与MOM很好的集成。
...全文
96 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
andyzhu98 2005-05-24
  • 打赏
  • 举报
回复
好!
哈哈007哈 2005-05-24
  • 打赏
  • 举报
回复
mark

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧