我可以使用springsmvc + ejb + hibernate进行分布式应用吗?

时间:2014-08-01 12:24:05

标签: hibernate spring-mvc ejb distributed-apps

我可以在我的应用程序中使用spring mvc + EJB + Hibernate的组合。 我的应用程序是分布式应用程序 那么这种组合适合我的应用吗?


我想开发一个分布式应用程序并使用spring-mvc开始使用gui编码 现在我想访问数据库,我很困惑天气使用jdbc或hibernate?

我在某处读到hibernate不适合分布式应用程序。那么有人可以帮我决定天气使用jdbc还是休眠?

提前谢谢。

1 个答案:

答案 0 :(得分:0)

TL; TR:是的,你可以。

长版:

JDBC vs JPA(或Hibernate):如果您需要域的面向对象版本(一般它&##),JPA / Hibernate往往是可行的方法39;一些好事)。 JDBC更多地用于性能任务(批处理)或简单的查询工具(甚至用于遗留系统)。

SpringMVC vs JSF :当你更喜欢使用组件库(例如:primefaces)时使用JSF,当你想要完全控制你的Javascript + CSS + HTML时,往往会使用SpringMVC。正如您所知,JSF是一种抽象,可以避免尽可能多地处理Web技术。两者都不比另一个好,只是不同

Spring Framework vs EJB / CDI :首选项很重要,它们几乎提供与其他相同,编程模型几乎相同,请记住一些Spring特性是独家的(Vendor Lock领先!),并且在某种程度上(我的偏见)EJB + CDI更优雅和简单。

替代解决方案:如果您熟悉SpringMVC,那么请使用它,您甚至可以在Java EE服务器中使用它

警告:不要使用旧的错误方式 tomcat + zillions of jars ,如果你使用Java EE至少使用TomEE,如果你更喜欢Spring,请使用tc Server。 / p>

注意:现在的App服务器并不重(参见:TomEE,wildfly)。

编辑:

对于"分发"您可以使用JMS或Webservices的系统(还有其他技术但不是主流)。

使用EJB(@Webservice或@Path注释)实现的Web服务方式更简单,您可以使用JMS,但是维护和监控更难,也许您将需要确认一些客户端,您需要处理继承的JMS异步,请使用JMS 仅在必要时