Hibernate is an Object Relational Mapping tool, an alternative to Sun's Entity Beans 2.0. Hibernate has become over the years a "de facto standard" for object persistence in Java and today's JPA API is highly inspired by Hibernate (which can be used as JPA implementation).
Spring is a dependency injection framework which allows you to wire components and to benefits from additional services like declarative transaction management, declarative security, integration with many other frameworks, abstraction layers etc. Spring has been created to ease Enterprise Java applications development and to make it possible without EJBs and a "heavyweight" container. With Spring and Hibernate and e.g. Tomcat, you get a nice Enterprise stack. Spring is a "lightweight" container.
Spring and Hibernate have heavily influenced the way we build Java application and their adoption are the proof of the need for simplification. Despite, I see JEE 5 as Sun's answer to these "non standard" solutions to simplify Java Enterprise development.
So yes, Spring Hibernate are widely used together and Spring offers Hibernate (and JPA) integration but Spring and Hibernate are two different projects with separated board and governance. They have mutual interests but IMO the Hibernate Team manages Hibernate, the Spring Team manages Spring.
No comments:
Post a Comment