2009-09-28 65 views
0

要通过Web服务将数据从一个系统传输到另一个系统,通过数据接口,我们通常会通过SQL查询获取结果集,并将它们格式化为Web服务端点,并允许其他端进行检索。为什么以及何时使用基于EJB的Web服务?

对于EJB 3.0,我们似乎可以用无状态会话bean替换结果集。那么,与基于SQL的Web服务相比,有什么优势吗?我们应该什么时候使用它?

+3

10个问题,没有接受答案?你需要改变这种习惯以激励他人做出贡献。 – 2009-09-28 18:41:46

回答

2

这是系统架构师级别上的一个非常广泛的问题。我会尝试用我的最佳知识来回答,而不会开始火焰战争(仅供参考,我已经使用了ejb和spring)。如你所知,构建一个稳定/强大的软件应用程序需要许多构建块,例如日志记录,连接池等。通常,你可以找到这些构建块的库,但并不是所有库都有通用api,所以他们可能需要整合。在最糟糕的情况下,您可能必须锁定某些供应商。 EJB 3(或Java EE)的主要思想是提供更完整的构建块(通过API,注释或配置),因此开发人员可以立即开始使用行业标准API/spec /配置没有专有API的培训。此外,由于API/config确实是行业标准,所以您可以在不更改代码的情况下更改供应商(当然,您的实际使用里程可能会有很大差异,希望新的Java EE能够修复它)。

您的应用程序可能已经有了一些EJB 3已经提供的主要元素。但是,EJB 3承诺提供更多的诸如ORM映射,RMI,负载平衡,故障转移,事务,动态重新部署,日志记录,系统管理,线程管理,资源池(数据库连接),安全性,缓存等。

由于您已经有一个工作应用程序,您可以真正考虑是否值得将您的代码迁移到标准系统以获得更多功能,并单独集成新功能。此外,EJB 3.0(或Java EE)并不是您可以选择的框架。你也可以看看其他的框架,比如Spring。

我的建议是真正了解您的系统需求,然后选择正确的技术,而不是先选择最酷的技术。

祝你好运

相关问题