您可以使用Spring而不是EJB。我推荐它!
但是,这两种方案都能以极好的方式处理企业功能,如事务处理和安全性。
使用Spring或没有,你仍然需要一个Servlet容器为你的网页。如果您配置Servlet容器的web.xml文件正确,Servlet容器可以启动Spring容器。
事务处理与春例如:
@Transactional
public void execute(..) {..}
并与EJB 3.X:
@TransactionAttribute
public void execute(..) {..}
正如你看到的,两种替代方案为您提供了企业添加功能声明。
它可能有一台服务器上所有的业务逻辑:
阅读HenryOS的评论后更新。
一个解决方案可以是在客户端(WEB服务器和胖Swing客户端)之间使用Web服务。这是一个非常好的松耦合解决方案。
如果您需要更多速度,可以考虑使用Google的Protocol Buffer或类似技术。
一个有趣的事情是,对于Web服务或协议缓冲区,您仍然需要在服务器上使用业务逻辑的Tomcat或Jetty之类的Web容器,因为它必须为客户端提供Web服务。所有Web服务框架(如Spring WS,CXF和Apache Axis 2)都使用Servlet。
说到层次,我会在WEB服务器上推荐两层,因为在将数据发送到业务服务器之前,您只能呈现和检索数据。在业务服务器上,我会推荐三层。处理Web服务的顶层,中间的业务层以及底层的针对数据库和其他企业系统的集成层。最后,如果您将CXF或Spring WS与JAXB一起使用,那么业务服务器上的所有类都可以写为POJO!它也适用于其他几个写得很好的Web服务框架。
我希望这能回答你的问题!
首先是任何事情,thx为您的回应......并且我明白你说什么,但我的问题是否有没有servlets/JSP/EJB的业务逻辑是可能的..即只有pojos。 我想要在Web服务器中使用Servlet/JSP(Web浏览器的表示层),并且在另一个服务器(App Server)上使用由Application Client使用的业务逻辑公共(服务对象,数据访问对象和域对象)桌面(直接)和Web浏览器(通过到servlets/jsp) – HenryOS 2010-05-24 14:56:54
非常感谢您的回复。 so .. to finish ..如果我需要为JSP/Servlet(在Web服务器上)或应用程序桌面客户端提供业务逻辑服务,则唯一方法是实现Web服务意味着servlet,因此应用服务器上实现Web容器??? – HenryOS 2010-05-24 16:44:52