Spring
Spring is another popular context that is used by many Java developers because it simplifies application development by offering capabilities such as dependency injection and aspect-oriented programming (AOP). Spring is a lightweight context, but it doesn't implement the JEE specifications, so it's not a Java enterprise container.
Note
Spring used to be known simply as a context, but the current direction of Spring is, in fact, moving towards being a standalone container, so enterprise applications can be written without having to implement JEE specifications. Spring now offers a Model-view-controller framework, web services, Spring data, batch, Spring integration, and many other capabilities, which collectively make Spring a worthy competitor to JEE. Nevertheless, Spring plays very nicely in JEE containers while simplifying many configuration and deployment tasks.
In this section, we will discuss how to configure Hibernate using the Spring container. If you are new to Spring...