EJB问题,请教高手(非高手莫进)

woxin 2002-04-28 03:01:58
1. To an EJB container, there is no difference between a stateful/stateless session bean
2. What is the difference between container-managed and bean-managed persistence?
Show by coding examples.
3. How does a session bean talk to an entity bean?
4. What is the relationship between on entity bean instance and a database table?
...全文
26 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
a_ja 2002-04-28
  • 打赏
  • 举报
回复

我按照"j2ee Tutorial"里的步骤dploy完成了《mastering-EJB2.0》里面的helloWorld例子。然后用
”runclient -client HelloApp.ear -name HelloClient“运行客户程序时出现如下的异常:
Initiating login ...
Binding name:`java:comp/env/HelloHome`
Application threw an exception:java.lang.IllegalAccessException
请问是什么原因?
(对了,最后让我设什么APPCPATH=ConverterAppClient.jar; export APPCPATH;我不知道怎么弄就没有管);
jintooth 2002-04-28
  • 打赏
  • 举报
回复
xioyoo(xioyoo) :very good. You had a solid base of EJB.
肖尧19 2002-04-28
  • 打赏
  • 举报
回复
虽然我不是高手,不过可以试试作答
1,其实一个statefulBean和stateless在编码上是不能做出什么指定的,区别在于向容器的部署过程中,一般部署工具到达某一个步骤会让你选择需要将这个EJB部署为何种类型的BEAN,之后在客户调用的时候容器会自行管理,比如是一个statefulBean,容器会自动做相应管理保存BEAN方法调用间的会话状态。
2 container-managed为容器持久性管理,bean-managed persistence为BEAN持久性管理。二者可简称为cmp和bmp.cmp由容器本身自动管理Bean状态向基础数据库保存的过程,一般指定需要交由容器管理的字段并设置字段间关系后,部署工具可自动生成相应的SQL和EJB QL语句。CMP大大减少程序员需要手工编写的代码量,而让程序员把更多精力集中于业务逻辑上。BMP与之相反,数据库操作的代码需要全部由程序员手工实现,这样使得程序较CMP臃肿,但更具灵活性。(代码倒是有现成的,不过太多了,抱歉)
3 session bean可以根据entity bean的JNDI名或环境名引用来查找entity bean的HOME接口,
javax.naming.Context con=new javax.naming.InitialContext();
Object obj=con.lookup("entitybean's jndiname");
entityHome home=(entityHome)javax.rmi.PortableRemoteObject.narrow(
obj,entityHome.class);
entityObject entity=home.create(args...);
以上假设entityHome,entityObject分别是entityBean的REMOTE HOME INTERFACE 和REMOTE INTERFACE,在得到远程接口entity后,就可以调用entityBean中实现的各业务方法了
4,简单地说,entityBean的实例对应了数据库一个表中的一行记录

67,515

社区成员

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

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