Spring vs Hibernate

Vid*_*dar 35 java spring hibernate

只是试图让我的头围绕Spring,并弄清楚如何在xml配置文件中连接Oracle连接,现在发现我还需要另一个框架! - Hibernate,这太令人沮丧了,因为感觉我越来越深入越来越多的框架而没有真正得到我需要的东西!

我看了一下Hibernate,它似乎对Spring做了类似的事情,记住我只想在Oracle中做一些SQL插入.

我很不情愿,也没有时间学习2个框架 - 我能否因为我需要做的简单事情而采用Hibernate?

Osc*_*Ryz 61

...我可以通过采用Hibernate来完成我需要做的简单事情吗?

Hibernate用于ORM(对象关系映射),即使您的对象持久化为RDBMS.

春天更进一步.它还可以用作AOP,依赖注入器,Web应用程序和ORM等.

因此,如果您只需要ORM,只需使用Hibernate即可.当你需要Spring的时候,你将会学到它.

这是Spring的架构视图:

弹簧

这是Hibernate:

过冬


And*_*jer 11

Spring和Hibernate是针对不同问题的完全不同的框架.Spring是一个具有许多功能的庞大框架,Hibernate是一个O/R桥.

我建议在你的情况下使用普通的旧JDBC('只是Oracle中的一些SQL插入').

  • 是的,Spring唯一没有的就是它自己的VM,很快就会加入它不会吗?;) (4认同)
  • @Esko,Spring被认为是轻量级的,因为使用一个组件不会强迫你使用其他组件,通常你的代码对Spring没有多大依赖; Spring力量对你的重量非常轻 (3认同)

kro*_*old 7

你可以使用spring和spring-JDBC集成.根据您的数据访问需求的复杂性,它可能绰绰有余.如果您要进行大量的数据访问,那么Spring 对象关系映射也值得研究.

关于spring的好处是它是一个非常松散耦合的框架.因此,您可以阅读您使用的位,并忘记其余位 - 即使在运行时也是如此.


Jef*_*tin 5

Spring 和 Hibernate 实际上是为了做两件不同的事情。Spring 首先是一个控制反转容器和配置子系统,而 Hibernate 是一个数据库绑定和延迟加载引擎。如果您不想在代码中引入大量新内容,请坚持使用 Spring 并推出您自己的查询或使用iBatis进行更简单的数据库绑定。

  • 恕我直言,不要将他与 iBatis 混淆。这确实是一个很好的框架,但对他来说又是另一个框架。肯定没有负面影响。 (2认同)