Tuesday, 28 February 2017

Spring Home

Hi Guys,

Today I am going to tell you about Spring Technology. I mean about Spring Framework in Java EE. It is most popular application development framework for enterprise Java.

Spring Framework is an open source application framework for Java platform that provides comprehensive infrastructure support for developing Enterprise level Java applications.

The framework's first release was written by Rod Johnson under the Apache 2.0 license in June 2003. It is a light - weight framework for the development of enterprise - based applications due to the POJO (Plain Old Java Object) model. The basic version of Spring is around 2MB.

The core features of the Spring Framework can be used in developing any Java application, but there are extensions for building web applications on top of the Java EE platform. Spring framework targets to make J2EE development easier to use and promote good programming practice by enabling a POJO-based programming model.

Declarative transaction management, remote access to the logic using RMI or web services, mailing facilities and various ways for data persistence in a database can be configured using Spring. This framework can also be used for all layer implementations for a real time application or it can be used for a particular layer of a real time application development. Apart from Struts which is only related to front end and  Hibernate which is only related to database, Spring enables to develop application related to all layers.

The infrastructure is handled by Spring so that the application logic can be focused. An application from Plain Old Java Objects (POJOs) and applying enterprise services to POJOs can be built using Spring. This ability of the framework is applied to the JavaSE programming model and to full and partial JavaEE also.

Let's take a tour to Spring Development but before we start first of all as an application developer, there are some advantages provided by Spring platform:

  • Spring enables a Java method to execute in a database transaction without having to deal with transaction APIs.
  • Spring enables developers to develop enterprise-class applications using POJOs. 
  • One more benefit of using only POJOs is that you do not need an EJB container product such as an application server but you have the option of using only a robust servlet container such as Tomcat or some commercial product. 
  • Spring enables a Java method to be a remote procedure without having to deal with remote APIs.
  • Testing an application written with Spring is simple because environment-dependent code is moved into this framework. Furthermore, by using JavaBean-style POJOs, it becomes easier to use dependency injection for injecting test data.
  • Spring enables a local Java method to have a management operation without having to deal with JMX (Java Management Extensions) APIs.
  • Spring enables a local Java method to contain a message handler without having to deal with JMS (Java Message Service) APIs.
aaah and lot more benefits Spring has.

Spring has gained popularity as it is simple due to its usage of the POJO/POJI model, for testing a spring application there is no need for a server or a container like that for an EJB or a struts application and Spring objects follow loose coupling by using dependency injection mechanism with the help of POJO/POJI model.