Header Ads

ad

Spring-Definition

Spring Definition

==============

Spring is an open source, light weight, loosely coupled, non-invasive, aspect oriented, Dependency Injection based Java application framework created by Rod Johnson in 2003. It provides abstraction layer on multiple Java J2EE technologies (JDBC, Servlet, JSP etc ) to develope various types of applications...

Let's understand each terminology such as open source, light weight , loosely coupled etc in details..



Open Source

===========

People generally thinks that open source means free. But it is not totally true any application is open source means it is freely available as well as source code is also exposed to the programmer so that programmer can take the source code and modify it as per his requirement...


Light Weight

===========

Spring is light weight because:
  • It comes in zip file having "less size". 
  • Most of the Spring Applications can be executed having support of JRE + Spring libraries i.e without having support of the heavy weight web server or App server software support.

Loose Coupling

=============

  • The dependency between spring modules is very less.
  • We can develope spring project either using one or multiple module.
  • Spring framework gives multiple jars to work with multiple modules. We can use only those libraries which are required in the project, This makes Spring as light weight and loosely coupled.

Non-Invasive

===========

Spring is non-invasive means it does'nt force a programmer to extend or implement their classes from any predefined classes or interfaces given by Spring API.


Aspect Oriented

==============

  • Separating secondary logics from primary logics at the time of development and mixing them dynamically at run time is called Aspect oriented programming.
  • The logics which are minimum to complete the task, without these logics we can not perform the operation called primary logics such as Transfer money, withdraw, deposite etc.
  • The logics that are optional and configurable on primary logics such as Security, logging logic, Performance Monitoring are called Secondary Logics.

Dependency Injection

==================

  • Here Underlying container/Server/Framework/JRE dynamically loads and creates both target class and dependent class objects and assigns Dependent class object to target class object.





No comments