Spring is a framework for Java platform.The first version of Spring was developed in 2002. Spring framework has been considered as a replacement of the EJB model. Spring has a number of core features,those can be used by any Java application.But the feature extensions are meant to work with Java EE. This chapter gives a basic Spring Framework Tutorial . We will be discussing more details in coming chapters.
Features at a glance:
-
Dependancy injection
-
Spring MVC for developing MVC applications
-
Spring AOP : Aspect Oriented Programming suport
-
Data Access Framework : It supports all widely used ORM technologies like Hibernate
-
Spring Batch :Batch processing support
Modules in Spring Framework
Spring framework has 20 modules .They are grouped into :
1)Core Container : It provides the fundamental features of spring frame work,including Inversion of Control and Dependency Injection.The modules in core container are:spring-core,spring-context,spring-beans , spring-expression(Spring Expression Language-SPEL) and spring-context- support
2)Web:The modules are : spring-web
, spring-webmvc
, spring-websocket
, and spring-webmvc-portlet
.
Spring-web : It provides basic web oriented features.
Spring-webmvc:-It provides MVC features
and REST web service support.
Spring-webmvc-portlet :
Supports features for portlet environment
3)AOP : This module provides Aspect oriented Programming (AOP)support
4)Instrumentation : It provides class loader implementation support for certain application servers.
5)Messaging :- It provides support for Messaging based applications.
6)Data Access/Integration:-
spring-jdbc :-Provides JDBC Support
spring-tx :-Provides support for declerative and programatic transaction management
spring-orm :-Provides support for ORM technologies like Hibernate
spring-oxm :-Provides support for Object/XML mapping such as JAXB
spring-jms :-It has features for producing and consuming messages
7)Test : spring-test provides unit testing and integration testing of spring componemnts with Junit otf TestNG.
The modules in the framework is shown as a simplified block diagram.
We will be discussing about these modules in coming chapters.