Followers

springIOC: Overview and features

Spring framework was initially written by Rod Johnson and was first released under the Apache 2.0 license in June 2003.
Advantages or features:
* Spring is an open source.
* Light weight because of POJO usages.
* Loose coupling : Spring is organised in modular fashion and all are loosely coupled, developer can ignore the other modules when working on a particular module
* Spring is frameworks of framework : as it is supporting many technologies like ORM frameworks(Hibernate, JDBC, JPA) logging frameworks, J2EE
* Easy to Test : DI makes testing the application easy
* Non-invasive : Spring framework neither extends nor implements framework related class or interface. Thus there is a least dependency on framework.
Power Abstraction : It provides power full abstraction to Java, J2EE specifications such JMS, JDBC, JPA.
Declarative Support:  It provides declarative support for caching validation, transactions and formatting.
Pre-defined Templates : Spring framework provides templates for JDBC, Hibernates, JPA etc., technologies. So there is no need to write too much code. It hides the basic steps of these technologies.
* Spring is an End to End application framework :
Let’s take the example of JdbcTemplate. You don’t need to write the code for exception handling, creating connection, creating statement, committing transaction, closing connection etc. We need to write the code executing query only. Thus, it saves a lot JDBC code. 


Spring Framework - Architecture

       
        



       Data Access/Integration
       These modules provide support to interact with the database. This comprises of JDBC, ORM, OXM, JMS and Transactions modules
       Web:
       This group comprises of web, web-servlet, web-struts and web-portlet. These modules provide support to create web application.
       AOP, Aspects and Instrumentation
       These modules support aspect oriented programming implementation where you can use Advices, pointers etc, to decouple the code.
       The aspects module provides support to integration with AspectJ
       The instrumentation module provides support to class instrumentation and classloader implementations
       Core container
       Contains core, beans, context and EL modules provides IOC& DI features
       EL – is an Extension defined in JSP, It provides support to setting and getting property values, method invocation, accessing collections and indexes , named variables, logical and arithmetic operators, retrieval of Object by name etc
       Test:
       This layer provides support of testing with JUnit and Testing


No comments:

Post a Comment