Spring is the framework of choice to wire Enterprise Java applications. It has solved a number of problems that Enterprise Java applications have faced since the complexity associated with EJB2. A few of them are listed as follows:
- Loose coupling and testability
- Plumbing code
- Lightweight architecture
- Architectural flexibility
- Simplified implementation of cross-cutting concerns
- Best design patterns for free