Lightweight:
Spring is lightweight when it comes to size and transparency.
The basic version of spring framework is around 2MB.
IoC containers tend to be lightweight, especially when compared
to EJB containers.
This is beneficial for developing and deploying applications on
computers with limited memory and CPU resources.
Inversion of control (IOC):
Loose coupling is achieved in Spring, with the Inversion of Control technique. The objects give their
dependencies instead of creating or looking for dependent objects.
With the Dependency Injection (DI) approach,
dependencies are explicit and evident in constructor or JavaBean properties.
Aspect oriented (AOP):
Spring supports Aspect oriented programming and separates
application business logic from system services.
Container:
Spring contains and manages the life cycle and configuration of
application objects.
MVC Framework:
Spring’s web framework is a well-designed web MVC framework, which provides a great alternative to
web frameworks.
Transaction Management:
Spring provides a consistent transaction management interface
that can scale down to a local transaction and scale up to global transactions
(JTA).
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).
Exception Handling:
Spring provides a convenient API to translate
technology-specific exceptions (thrown by JDBC, Hibernate, or JDO) into
consistent, unchecked exceptions.
Testing:
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 does not reinvent the wheel instead; it truly makes use
of some of the existing technologies like several ORM frameworks, logging
frameworks, JEE, Quartz and JDK timers, other view technologies.
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’s web framework is a well-designed web MVC framework,
which provides a great alternative to web frameworks such as Struts or other
over engineered or less popular web frameworks.
No comments:
Post a Comment