我一直在尝试了解WebSphere Commerce中的Java Bean,但是我感到非常困惑。请帮帮我。我需要知道:
尽管我发现了Session和Entity之间以及Access和Data之间的区别,但是我还是无法理解它们之间的相互关系。
所有帮助将不胜感激。
最佳答案
实体Bean代表由EJB规范编码的Java Bean,并且该Java类用于标识表中的记录。
session Bean也是遵循EJB规范的Java Bean;但是此bean可以被认为等效于具有业务逻辑且与实体bean(即DB Data)交互或不与之交互的java类。因此, session bean(例如ProcessRegistrationBean)将作用于实体bean(例如PersonBean)。
现在,关于访问和数据bean是什么的问题的第二部分:这两个bean是Websphere应用程序提供的实体bean的扩展,提供了对实体bean的便捷访问,从而隐藏了JNDI查找和EJB规范的home/remote接口(interface)方法的复杂性。
这意味着,如果您想获取用户的信息,则可以轻松地做到这一点,只需通过它的无arg构造函数创建UserAccessBean(由用户的实体bean生成),然后通过设置用户ID进行初始化。幕后的AccessBean使用本地接口(interface)访问远程接口(interface),并且所有这些EJB事情都发生了,而您不需要明确地了解它们-因此使开发人员更容易。
Databean是其相应访问bean的扩展,即UserDataBean扩展了UserAcessBean。
AccesBean的建议用法是在Java层中,例如SessionBean(这也意味着您不必直接处理实体bean)和JSP层中的DataBean。这就是所有这些之间的联系