GroupId |
Artifactid |
Description |
Org.springframework |
Spring-beans |
Beans support, including Groovy |
Org.springframework |
Spring-aop |
Agent-based AOP support |
Org.springframework |
Spring-aspects |
ASPECTJ-based Facets |
Org.springframework |
Spring-context |
Application context runtime, including scheduling and remote abstraction |
Org.springframework |
Spring-context-support |
Supports the integration of common third-party class libraries into the Spring application context |
Org.springframework |
Spring-core |
Core modules that other modules rely on |
Org.springframework |
Spring-expression |
Spring expression Language, Spel |
Org.springframework |
Spring-instrument |
JVM-guided Instrumentation (monitor) proxy |
Org.springframework |
Spring-instrument-tomcat |
Tomcat's Instrumentation (monitor) agent |
Org.springframework |
Spring-jdbc |
Support includes data source settings and JDBC access support |
Org.springframework |
Spring-jms |
Supports helper classes that include sending/receiving JMS messages |
Org.springframework |
Spring-messaging |
Support for message schemas and protocols |
Org.springframework |
Spring-orm |
Object/Relationship mappings, including support for JPA and Hibernate |
Org.springframework |
Spring-oxm |
Object/xml Mapping (Object/xml MAPPING,OXM) |
Org.springframework |
Spring-test |
Unit test and integration test support components |
Org.springframework |
Spring-tx |
Transactional infrastructure components, including support for DAO and integration of JCA |
Org.springframework |
Spring-web |
Web support packages, including client and web remote calls |
Org.springframework |
Spring-webmvc |
The MVC implementation of REST Web services and Web applications |
Org.springframework |
Spring-webmvc-portlet |
MVC implementations for the Portlet environment |
Org.springframework |
Spring-websocket |
WebSocket and SOCKJS implementations, including support for STOMP |
1. Core Module
Spring-core: The most basic implementation of dependency injection IOC and DI
Spring-beans:bean Factory and Bean Assembly
Spring-context:spring context is the IOC container
Spring-context-support
Spring-expression:spring Expression Language
Detailed description
(1) Spring-core
This jar file contains the basic core tool classes of the spring framework, and the other components of spring are used in the class of the package, the basic core of other components, and of course you can use these tools in your own application.
(2) Spring-beans
This jar file is used by all applications and contains all classes that access the configuration file, create and manage beans, and perform inversion of control/dependency injection (IOC/DI) operations. If the application requires only basic Ioc/di support, the introduction of Spring-core.jar and Spring-beans.jar files is possible.
(3) Spring-context
The spring core provides a number of extensions, which makes the underlying functionality provided by core and Beans enhanced: This means that spring engineering can access objects in a framework mode. The Context module inherits the features of the beans module and adds to internationalization (such as resource binding), event propagation, resource loading, and context transparency (such as Servlet container). Java EE features such as EJB, JMX, and basic remote access are also supported. The key to the Context module is the ApplicationContext interface. Spring-context-support provides support for the integration of third-party libraries into spring-context, such as cache (EhCache, guava, Jcache), Mail (JavaMail), Dispatch (Commonj, Quartz) , template engine (Freemarker, JasperReports, Velocity) and so on.
(4) Spring-expression
Provides a powerful expression language for querying and manipulating object graphs at run time. It is an extension of the unified expression language defined in the JSP2.1 specification, supports set and get property values, property assignments, method invocations, access to array collections and indexed content, logical arithmetic operations, named variables, retrieving objects from the spring IOC container by name, and supports the projection, selection, and aggregation of lists.
2. Data access/integration-access and integration
The data access and integration layer contains JDBC, ORM, OXM, JMS, and transaction modules.
Detailed description
(1) Spring-jdbc
Provides a JDBC abstraction layer that eliminates lengthy JDBC coding and parsing of database vendor-specific error codes.
(2) Spring-tx
Supports both programmatic and declarative transactions, which can be used for classes that implement a particular interface and for all POJO objects. Programmatic transactions need to write their own transaction management methods such as BeginTransaction (), commit (), rollback (), and declarative transactions are handled automatically by spring through annotations or configurations, with finer granularity in programmatic transactions.
(3) Spring-orm
Provides integration of popular object-relational mapping APIs, including JPA, JDO, and Hibernate. This module allows these ORM frameworks to be integrated with other functions of spring, such as the transaction management mentioned earlier.
(4) SPRING-OXM
The module provides support for OXM implementations such as JAXB, Castor, XML Beans, JiBX, XStream, and so on.
(5) SPRING-JMS
The module contains the functions of production (produce) and consumption (consume) messages. Starting with Spring 4.1, the Spring-messaging module is integrated
3. Web
The WEB layer includes modules such as Spring-web, Spring-webmvc, Spring-websocket, Spring-webmvc-portlet, and so on.
Detailed description
(1) Spring-web
Provides basic web-oriented functionality and web-oriented application contexts, such as multipart file upload capabilities, initializing the IoC container with a Servlet listener, and more. It also includes the web-related parts of the HTTP client and the Spring remote call
(2) Spring-webmvc
Provides the implementation of Model View Control (MVC) and REST Web services for Web applications. Spring's MVC framework allows the domain model code and Web Forms to be completely detached and integrated with all the other features of the spring framework
(3) Spring-webmvc-portlet
(i.e. the Web-portlet module) provides an MVC implementation for the Portlet environment and reflects the functionality of the PRING-WEBMVC module
4. AOP
(1) SPRING-AOP
Provides an implementation of aspect-oriented programming (AOP) that can define such things as method interceptors and pointcuts, so that the code that implements the functionality is completely decoupled. Use the source-level meta data.
(2) Spring-aspects
Provides an integration of the AspectJ
5, Instrumentation
(1) spring-instrument
The module provides support for instrumentation classes and implementations of class loaders for specific application servers.
(2) Spring-instrument-tomcat
The module contains the spring detection agent for TOMCAT.
6. Messaging-Message processing
Spring-messaging Module
The integration begins with spring 4 and is extracted from key abstractions in some of the spring integration projects. These projects include messages, Messagechannel, MessageHandler, and other projects that serve message processing. This module also contains a series of annotations for mapping messages to methods
7. Test
Spring-test Module
Support Unit testing and integration testing with JUnit and TestNG components. It provides consistent loading and caching of the Spring context, as well as mock objects for individual test code (mock object)
Introduction to Spring Modules