The Spring framework consists of about 20 modules, grouped into the following groups: Core container cores Container
Data access/Integration Access/integration Network Web
Facet oriented AOP (Aspect oriented programming)
Cartridge Instrumentation (Java 1.6 new features)
Message Messaging
Testing test
1. Core container
Spring-core and Spring-beans: Provides the basic part of the framework, including control inversion and dependency injection, Beanfactory is implemented in Factory mode so that we don't have to create a single instance object on our own and separate the dependent configuration and design from the business logic.
The Spring-context module is built on the first two, and it can use a framework-style (Framework-style) approach to access objects, similar to Jndi service registrations. The module integrates bean modules and incorporates internationalization, event propagation, resource loading, transparent build contexts, and Java EE features such as EJB, JMX, and basic remoting. The key to the context module is the ApplicationContext interface. Spring-context-support supports the integration of Third-party libraries, such as caching, mail, scheduling, template engines, and so on.
Spring-expression provides powerful El (expression language) querying and manipulating objects in the running state, which supports assignment of properties, setting and getting property values, method calls, accessing array collections, Logic and mathematical manipulation, variable naming, retrieving objects through the IOC container.
2. AOP and cartridge
The SPRING-AOP module provides a facet-oriented programming implementation that allows us to define method interceptors and pointcuts to enable separate functions for the separation of the business. Using the source-based metadata feature, we can also integrate behavioral information into the code, which and. NET properties are similar.
The Spring-aspects module supports the Spring framework consolidation ASPECTJ. Spring-instrument implements class inserts and ClassLoader implementations in a specific container. Spring-instrument-tomcat contains the Tomcat Spring plug-in agent.
3. Message
The Spring-messaging module contains abstractions derived from other messaging based applications such as Message,messagechannel,messagehandler. The module also contains a series of annotations that map messages to methods, similar to SPRINGMVC annotations.
4. Data access Control
SPRING-JDBC provides a JDBC abstraction layer that frees us from heavy JDBC programming and no longer needs to worry about parsing different database exceptions.
SPRING-TX supports programmatic and declared transactions (programmatic and declarative transaction) management of all pojo and classes that implement a specific interface.
Spring-orm integrates the popular ORM (object-relational mapping) application interface, including JPA, JDO, and Hibernate. Using this module we can use any of these ORM frameworks and other features of spring, such as the declared transaction management above.
SPRING-OXM provides an abstraction layer for the implementation of OXM (Object/xml mapping), such as JAXB, Castor, XMLBeans, JiBX, and XStream.
SPRING-JMS is the Java messaging Service (Java Messaging Service), which contains generating and receiving messages. The Spring Framework 4.1 incorporates it into the spring-messaging module.
5. Web
Spring-web contains basic network-oriented integration features such as file partial uploads, initializing IOC containers using Servet listeners and network-oriented application contexts. He also includes HTTP client and network-related spring remote support.
Spring-webmvc is also a web-servlet module that contains spring's model-view-controller (MODEL-VIEW-CONTROLLER,MVC) and REST Web Services. The Spring MVC Framework is a clear separation of entity model Code and network forms, as well as easy integration of other features of the spring framework.
Spring-webmvc-portlet is also called the Web-portlet module, implements MVC in the Portlet container, and can use the functionality of the SPRING-WEBMVC module.
6. Test
The Spring-test module supports unit testing JUnit, integrated Test testng, and standalone code test mock objects. It supports loading and caching of Spring applicationcontexts.
Original: http://docs.spring.io/spring/docs/4.3.0.BUILD-SNAPSHOT/spring-framework-reference/htmlsingle/# overview-getting-started-with-spring Section 2.2 Modules