2009-09-07 153 views
5

我是一个新手,试图找出在Tomcat和JBoss中使用Hibernate的优缺点。休眠与Tomcat与休眠与JBoss

我正在开发一个Web应用程序,前端使用Flex,BlazeDS作为消息服务,后端使用Java。我们决定使用Hibernate作为持久性机制,但想知道在Tomcat和JBoss中使用它的权衡。

谢谢。

+0

非常感谢所有的快速回复。 我想知道如果在JBoss中使用Hibernate(因为它是一个应用程序服务器)与使用Tomcat相比有什么优势。 谢谢 – soontobeared 2009-09-07 18:53:51

回答

5

Tomcat是JBoss的servlet引擎,所以你不管使用Tomcat。

我会为你的情况去JBoss。它已经提供了Hibernate,节省了你在应用程序中捆绑Hibernate的需求。 JBoss预先配置了多个不同的配置文件,因此您可以选择所需的配置文件,而不需要太多的行李(即可以放心地忽略所有重要的JavaEE资料)。同样,如果您的应用程序需要开始使用更多的JavaEE资料(例如Web服务,EJB3),您可以轻松地将这些JBoss服务带入。

顺便提一句,您可能想看看GraniteDS作为BlazeDS的替代品,它似乎成为一款更好的软件。

1

我相信JBOSS EJB3使用Hibernate作为它的JPA实现。 Hibernate也嵌入到Seam中。而JBOSS使用Tomcat作为它的servlet/JSP引擎,所以你的比较不是“或者/或者”。

如果做得不好,您选择的Flex应该不知道或关心您如何坚持事情。这应该通过消息传递界面从客户端隐藏。

0

它应该没有区别。你可以同时使用Hibernate。尽管如此,我还是建议将它与JBoss一起使用,因为它安装了OOB,并且您不需要专门配置应用程序服务器来使用Hibernate。

另外,请考虑使用JPA(EJB3)。如果你使用JBoss,你将在后台使用Hibernate,你将从使用更通用的标准中受益。

+1

您可以选择通过Hibernate EntityManager使用JPA(并且不支持Hibernate扩展),无论是否使用JBoss。使用JBoss _just_进行Hibernate是矫枉过正的。 – ChssPly76 2009-09-07 18:46:27

+1

是的,但他也需要一个Servlet容器。和一个APP服务器休眠和一个Servlet容器配置开箱即用,是JBoss ... – 2009-09-07 19:06:59

0

使用JPA和Hibernate作为Tomcat上的JPA实现。这更简单,通常更好。如果您需要使用Tomcat作为servlet容器,您可以轻松地“升级”到JBoss提供的更完整的堆栈。