My understanding of Spring
- -Lightweight J2EE Application Development Framework
- -Main components: dependency injection container, AOP implementation, DAO/ORM support, web integration
- -Core encapsulation package: The most fundamental part of the framework, providing IoC dependency injection features. The fundamental concept here is BeanFactory, which provides a classic implementation of the Factory pattern to eliminate the need for programmatic singleton patterns and truly allows for the separation of dependencies and configurations from the programming logic.
- -Building a Context encapsulation package based on the Core encapsulation package provides a framework style object access method, somewhat like a JNDI registrar. The characteristics of the Context encapsulation package come from the Beans encapsulation package, which adds support for internationalization (I18N) (such as resource binding), time propagation, resource loading methods, and transparent creation of the Context, such as through a Servlet container
- -DAO provides an abstraction layer for JDBC, which eliminates verbose JDBC encoding and resolves database vendor specific error codes. Moreover, the JDBC encapsulation package provides a declarative transaction management method that is better than programmability, not only implementing specific interfaces, but also applicable to all POJOs.
- -The ORM encapsulation package provides an integration layer for commonly used object relationship mapping APIs. By using the ORM encapsulation package, all Spring provided features can be mixed for object relational mapping, such as simple declarative transaction management.
- -Spring's AOP encapsulation package provides aspect oriented programming (AOP) compliance.
- -Spring's web package provides basic integration features for web development, and when used with WebWork or Struts, this package can be combined with other frameworks.
- -The MVC encapsulation package in Spring provides a Model View Controller (MVC) implementation for web applications. Spring's MVC framework provides a clear separation model. Spring's MVC framework provides a clear separation model between domain model code and web forms, and can also leverage other features of the Spring framework
The role of Spring
- IOC control reversal
- aspect oriented programming