Spring is a complete j2ee framework having following features
- Spring Core:
- Spring Context Package:
- Spring DAO package:
- Spring ORM package:
- Spring AOP Package:
- Spring's Web package:
- Spring's MVC package:
Most basic part of framework that provides IOC and dependency injection features .The most basic part is BeanFactory which provides a sophisticated implementation of the factory pattern which allows programmer to decouple the configuration and specification of dependencies from actual program logic.
The package, which provides a way to access objects in a framework-style manner similar to JNDI naming Concept.
This Package provides a JDBC-abstraction layer that removes the need to write JDBC coding and parsing database-vendor specific error codes.
This Package provides integration layers for popular object-relational mapping. APIs, like JDO, Hibernate etc. Using the ORM package you can use all those O/R-mappers in combination with all the other features Spring offers, such as the simple declarative transaction management feature.
This is a aspect-oriented programming implementation which allows to define method-interceptors and point cuts to decouple code implementing functionality that should logically be separated.
This package provides basic web-oriented integration features, like multipart file-upload functionality or initialization of the IoC container using servlet listeners and a web-oriented application context. When using Spring together with Struts or any other web framework, this is the package to integrate with.
This package provides a Model-View-Controller (MVC) implementation for web-applications. Spring's MVC framework is different from other implementations as it provides a clean separation between model code and web forms, and allows you to use all the other features of the Spring Framework.