1、一个Book实体,如何加多条记录?是多个Book吗?还是Book和其它什么记录一起加入?我不太明白你的意思:)2、对,如果是删除,不妨只用一个关键字段的值做参数更方便,所以,我一般是把关键字段与Book实体分开,也就是所谓的“值对象”。这里的Book实体是一个ValueObject,不是一个实体Bean。在实体Bean中包含一个ValueObject对象和一个关键字段。3、同上原理,......6、对,实体Bean是不应该让用户直接调用的,应该为它加一个壳,会话Bean。关于J2EE的设计模式,请参考:http://java.sun.com/blueprints/patterns/j2ee_patterns/index.html

解决方案 »

  1.   

    你的第一个问题我不大明白,实体BEAN的远程主接口的create方法调用就可以生成一条新的BOOK记录。你怎么还能在ADD方法中以实体为参数来添加呢?你如果真的得到实体的接口引用,那么说明这个实例已经存在了,那么也没有必要添加了:)估计还是只有传参数
      delete方法也是,我同样觉得以实体为参数不好。应该是把这个参数传给实体HOME接口的findByXXX(agr);方法得到OBJECT INTERFACE,然后remove就删除了。
      update和上面差不多,总之我觉得你如果想用session bean做‘壳’,其实实际的主要业务逻辑还是封装在entity bean中,session bean中不过是做简单调用,不使entity bean显地暴露罢了
      抱歉,例子就没有了
      我赞同用session bean给entity bean加壳,同时我觉得分工应该明确,和entity bean关系密切的逻辑还是应该在entity bean 中,session bean来做简单调用
      

  2.   

    你如果想得到更到自己控制,不如换BMP来做
    至于传递的参数是什么,如果你的会话BEAN是通过LOCAL接口访问实体BEAN
    那么,传递BOOK实例还是关键字段,对效率来说,并没什么太大的影响
    如果是通过REMOTE接口访问,那就应该传递关键字段
      

  3.   

    LOCAL是为ENTITYBEAN的相关值提供一个客户视图
    那么应该是:
    sessionbean->entitybean's object interface->local's object interface
    何来“如果你的会话BEAN是通过LOCAL接口访问实体BEAN”
    劳烦解释一下可以吗