Usually how would each of the module in the Spring framework is used in a web project. I am trying to get an idea about it, as i am on a fast track to learn and implement it.
I know it does have below modules in it, but any help in explaining why and where they are useful would help me a lot in learning.
The Core container module
Application context module
AOP module (Aspect Oriented Programming)
JDBC abstraction and DAO module
O/R mapping integration module (Object/Relational)
Web module
MVC framework module
Thanks,
SS
This page might be helpful to you: Introduction to Spring Framework: Modules. Spring provides a very good, free reference manual that covers much of this and more.
Here’s my short summary of why you would use any of these:
Core – This allows you to use the dependency-injection pattern to construct your application, which can greatly simplify your classes and unit testing.
Application Context – This provides support code for many common problems.
AOP – This provides support for Aspect Oriented Programming, which can help you separate “cross cutting concerns” like logging and transaction management from your business logic.
JDBC – Provides support code that makes JDBC easier to use.
OR/Mapping – Provides support code to integrate popular ORM frameworks into Spring.
Web MVC – Provides support for the Model-View-Controller pattern using Spring beans (several other frameworks, such as JSF, provide this as well).
To sum it up, the Core module contains most of what people think of when they think of Spring, and the other modules provide code help you implement your application in a cleaner, more supportable way, without re-inventing the wheel.