Spring Framework

Spring framework is an open source Java platform begin developed by Spring source company. Spring framework is also available for .NET framework (Spring .NET). Spring framework is developed to simplify the development of enterprise applications in Java technologies.

The Spring is light weight, non-invasive IoC [inversion of control] Container and AOP [ aspect oriented programming ] framework. It provides support for JPA [ java persistence API ] , Hibernate, Web services, Schedulers, Ajax, Struts, JSF and many other frameworks. The Spring MVC components can be used to develop MVC based web applications. Spring framework provides many features that makes the development of enterprise application easy work.

Benefits Of Spring Framework

  • Spring enables to develop enterprise-class applications using POJOs. The benefit of using only POJOs is that you do not need an EJB container product such as an application server.
  • Spring is organized in a modular fashion. Even though the number of packages and classes are substantial, you have to worry only about ones you need and ignore the rest.
  • Spring makes use of some of the existing technologies like several ORM frameworks, logging frameworks, JEE, Quartz and JDK timers, other view technologies.
  • By using JavaBean-style POJOs, it becomes easier to use dependency injection for injecting test data.
  • Spring's web framework is a well-designed web MVC framework, which provides a great alternative to web frameworks such as Struts or other popular web frameworks.
  • Spring provides a convenient API to translate technology-specific exceptions (thrown by JDBC, Hibernate, or JDO, for example) into consistent, unchecked exceptions.
  • Lightweight IoC containers tend to be lightweight, especially when compared to EJB containers, for example. This is beneficial for developing and deploying applications on computers with limited memory and CPU resources.
  • Spring provides a consistent transaction management interface that can scale down to a local transaction (using a single database, for example) and scale up to global transactions (using JTA, for example).

Spring Framework Architecture

Spring is use to develop your all enterprise applications, however, Spring is modular, allowing you to choose which modules are applicable to you, without having to bring in the rest. The Spring Framework provides about 20 modules which can be used based on an application requirement.

Spring Framework