我可以将springs + EJB + Hibernate的组合用于我的应用程序吗?我的应用程序是一个分布式应用程序。那么这个组合适合我的申请吗?
我希望开发一个分布式应用程序,并已经开始使用springs进行gui编码。
现在我想访问数据库,而我困惑地使用jdbc还是hibernate呢?
我在某个地方读到hibernate不适合分布式应用程序。所以,谁能帮我决定是否使用jdbc或hibernate?
提前谢谢你。
发布于 2014-08-01 14:02:38
TL;TR:是的,你可以。
长版本:
JDBC (或Hibernate):如果您需要一个面向对象的域版本(一般来说,这是件好事),那么JPA/Hibernate是最好的选择。JDBC更多地用于性能任务(批处理)或简单的查询工具(甚至用于遗留系统)。
当您喜欢使用组件库(例如: primefaces)时,使用SpringMVC vs JSF :JSF,而当您想要完全控制Javascript+CSS+HTML时,则倾向于使用SpringMVC。正如您已经知道的,JSF是一种抽象,它尽可能避免处理web技术。没有一个比另一个好,只是不同而已。
Spring框架与EJB/CDI:关于首选项,它们提供的基本相同,编程模型几乎相同,请记住一些Spring特性是排他性的(Vendor!),而且在某种程度上(我的偏见) EJB+CDI更优雅和简单。
替代解决方案:如果您熟悉SpringMVC,那么您甚至可以在Java服务器中使用它
警告:不要使用旧的buggy方式tomcat +数以万亿计的jars,如果您使用Java至少使用TomEE,如果您喜欢Spring,则使用TomEE。
注意: App服务器现在并不重(参见: TomEE,通配符)。
编辑:
对于“分布式”系统,您可以使用JMS或Webservices (还有其他技术,但不是主流技术)。
web服务方式--使用EJB (@Webservice或@Path注解)实现的更简单,您可以使用JMS,但维护和监视有点困难,而且,您可能需要确认一些客户端,并且需要处理继承的JMS异步,只需要在必要时使用JMS。
https://stackoverflow.com/questions/25080210
复制相似问题