gpt4 book ai didi

java - 使用 spring 在应用服务器中实现业务逻辑

转载 作者:搜寻专家 更新时间:2023-10-31 20:07:18 26 4
gpt4 key购买 nike

是否可以使用 pojos 而不是 EJB 或 Servlet 在 App Server 远程实现业务逻辑???。主要思想是应用 3 层模型,其中客户端可以是 Web 浏览器和桌面应用程序,并且它们在 App Server 中共享业务逻辑。

这就是架构

browser----->Web Server -------->|App Server(Business Logic common)|-------->|RDBMS common|
desktop App(以Swing为例)->|App Server(业务逻辑通用)|-------->|RDBMS通用|

最佳答案

您可以使用 Spring 而不是 EJB。我推荐它!

但是这两种选择都将以出色的方式为您处理事务处理和安全性等企业功能。

无论是否使用 Spring,您的网页仍然需要一个 Servlet 容器。如果正确配置Servlet容器的web.xml文件,Servlet容器可以启动Spring容器。

Spring 的事务处理示例:

@Transactional
public void execute(..) {..}

对于 EJB 3.x:

@TransactionAttribute
public void execute(..) {..}

如您所见,这两种选择都可以让您以声明方式添加企业功能。

阅读 HenryOS 评论后更新:

可以将所有业务逻辑放在一台服务器上。

一种解决方案是在客户端(WEB 服务器和胖 Swing 客户端)之间使用 Web 服务。这是一个非常好的松耦合解决方案。

如果你需要更快的速度,可以考虑使用谷歌的Protocol Buffer或类似技术。

有趣的是,使用 Web Services 或 Protocol Buffer,您仍然需要在具有业务逻辑的服务器上使用 Tomcat 或 Jetty 等 Web 容器,因为它必须为客户端提供 Web 服务。所有 Web 服务框架,如 Spring WS、CXF 和 Apache Axis 2,都使用 Servlet。

说到层,我会推荐在 WEB 服务器上使用两个层,因为您只需要在将数据发送到业务服务器之前呈现和检索数据。在业务服务器上我会推荐三层。顶层处理 Web 服务,中间是业务层,底层是针对数据库和其他企业系统的集成层。

最后,如果您将 CXF 或 Spring WS 与 JAXB 一起使用,那么您在业务服务器上的所有类都可以编写为 POJO!它也适用于其他几个编写良好的 Web 服务框架。

我希望这能回答您的问题!

关于java - 使用 spring 在应用服务器中实现业务逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2897523/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com