0

我正在为一个非常简单的学生资源管理系统 (SRMS) 开发一个应用程序

我应该使用 Enterprise Java Beans、一个独立的 Java GUI 客户端和一个 Web 浏览器客户端

如果我Servlets用于浏览器客户端,我是否应该将所有逻辑都放在企业 bean 中,然后只调用Servlet? 所以我也可以从独立的 GUI 应用程序中调用相同类型的方法。

令人困惑的是,我的 .js 中不应该有任何逻辑Servlets,我应该在应用程序的 bean 层中拥有所有逻辑。

Session Bean还有一件事: a和 an 有什么区别Session Bean from Entity Classes

GUI 客户端也将使用登录,但这是浏览器客户端也将使用的唯一类似操作。浏览器客户端只能搜索和查看部分数据。

4

1 回答 1

3

例如,您可以将业务逻辑放在 EJB 会话 bean 中,后者又使用 EJB JPA 实体来访问数据库。如果您的所有逻辑都必须驻留在 EJB 层中,那么您必须采用这种方式。因此,EJB 会话 bean 是您的业务逻辑的接口。JPA 实体类映射到 RDBM 中的表。

这样,servlet 和独立的命令行应用程序就可以调用 EJB 会话 bean 中定义的方法。会话 bean 应该返回准备好在视图中显示的数据传输对象(例如,在 servlet 中没有进一步处理)。

根据经验,尽量限制自己只调用一个 EJB 方法,例如,如果用户单击“搜索”按钮。否则可能会有太多流量,尤其是对于命令行应用程序,因为该应用程序通常不在同一主机上运行。所以要注意EJB会话bean接口的设计。

EJB 会话 bean 是托管 bean(由应用程序服务器控制),例如提供声明性事务/安全性。

EJB 实体 bean 已被弃用,并已被 JPA 取代。

于 2013-08-06T16:23:19.943 回答