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