Spring Framework: Difference between revisions
(→SpEL) |
|||
(13 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
* https://docs.spring.io/spring/docs/5.1.0.RELEASE/spring-framework-reference/ | * https://docs.spring.io/spring/docs/5.1.0.RELEASE/spring-framework-reference/ | ||
* JavaDoc https://docs.spring.io/spring-framework/docs/current/javadoc-api/ | * JavaDoc https://docs.spring.io/spring-framework/docs/current/javadoc-api/ | ||
* Spring Framework releases: http://repo1.maven.org/maven2/io/spring/platform/platform-bom/ | |||
=Internal= | =Internal= | ||
Line 31: | Line 32: | ||
* [[Spring Dependency Injection and Inversion of Control Container Concepts]] | * [[Spring Dependency Injection and Inversion of Control Container Concepts]] | ||
* [[Spring | * [[Spring Property Injection Concepts]] | ||
* <span id='Spring_Framework_Testing'></span>[[Spring Framework Testing Concepts]] | |||
* [[Spring Framework Event Handling]] | |||
* [[Spring MVC Concepts]] | * [[Spring MVC Concepts]] | ||
* [[Spring REST Concepts]] | |||
* [[Reactive Support in the Spring Framework]] | * [[Reactive Support in the Spring Framework]] | ||
* [[Spring Transaction Management]] | * [[Spring Transaction Management]] | ||
* [[Spring Validation Concepts]] | * [[Spring Validation Concepts]] | ||
* [[Spring Persistence Concepts]] | * [[Spring Persistence Concepts]] | ||
* [[Spring Logging]] | |||
* <font color=darkgray>TO PROCESS until all Spring Concepts are depleted: https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/core.html</font> | * <font color=darkgray>TO PROCESS until all Spring Concepts are depleted: https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/core.html</font> | ||
=Spring Framework Dependency Management= | |||
All Spring Framework components are specified by [[Maven_Concepts_-_Dependencies#BOM|Maven BOM]]s, available here: | |||
{{External|[http://repo1.maven.org/maven2/io/spring/platform/platform-bom/ List of Released Maven BOMs on Maven Central]}} | |||
If Maven is used for building the project, the BOM support is built-in, so the BOM can be specified straight in the dependency section of the POM file. In Gradle, at least at the time of the writing, that is not possible, so we need to use a specialized Spring dependency management plugin. This section describes how to configure and use it: | |||
{{Internal|Gradle Spring dependency-management Plugin|Gradle Spring dependency-management Plugin}} | |||
Note that Spring Boot has a [[Spring_Boot_Concepts#Spring_Boot_Dependency_Management|different dependency mechanism]]. | |||
=TO DISTRIBUTE= | =TO DISTRIBUTE= | ||
Line 45: | Line 62: | ||
===Type Conversion=== | ===Type Conversion=== | ||
===SpEL=== | ===SpEL=== | ||
{{Internal|Spring Expression Language (SpEL)#Overview|Spring Expression Language (SpEL)}} | |||
===Data Binding=== | ===Data Binding=== | ||
===AOP=== | ===AOP=== | ||
==Spring Framework Data Access== | ==Spring Framework Data Access== | ||
<font color=darkgray>TO PROCESS https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/data-access.html#spring-data-tier</font> | <font color=darkgray>TO PROCESS https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/data-access.html#spring-data-tier</font> |
Latest revision as of 02:07, 24 March 2022
External
- https://spring.io/projects/spring-framework
- https://docs.spring.io/spring/docs/5.1.0.RELEASE/spring-framework-reference/
- JavaDoc https://docs.spring.io/spring-framework/docs/current/javadoc-api/
- Spring Framework releases: http://repo1.maven.org/maven2/io/spring/platform/platform-bom/
Internal
Overview
The core Spring Framework is the foundation of everything else in the Spring-based development model. It provides the core container and dependency injection framework, and many other features such as Spring MVC, data access, basic persistence support in form of the JdbcTemplate, integration, support for reactive-style programming, etc. Spring Data extends the persistence capabilities outside the core framework, as a separate project.
Functionality
- Basic Persistence
- Servlet-based Web Application Support
- Spring MVC
- WebSocket, SockJS and STOMP Messaging support
- Reactive Web Application Support
Spring Framework Core Technologies Concepts
- Spring Dependency Injection and Inversion of Control Container Concepts
- Spring Property Injection Concepts
- Spring Framework Testing Concepts
- Spring Framework Event Handling
- Spring MVC Concepts
- Spring REST Concepts
- Reactive Support in the Spring Framework
- Spring Transaction Management
- Spring Validation Concepts
- Spring Persistence Concepts
- Spring Logging
- TO PROCESS until all Spring Concepts are depleted: https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/core.html
Spring Framework Dependency Management
All Spring Framework components are specified by Maven BOMs, available here:
If Maven is used for building the project, the BOM support is built-in, so the BOM can be specified straight in the dependency section of the POM file. In Gradle, at least at the time of the writing, that is not possible, so we need to use a specialized Spring dependency management plugin. This section describes how to configure and use it:
Note that Spring Boot has a different dependency mechanism.
TO DISTRIBUTE
Spring Framework Core Technologies
Events
Resources
Type Conversion
SpEL
Data Binding
AOP
Spring Framework Data Access
Transactions
DAO Support
JDBC
ORM
Marshalling XML
Integration
Remoting
JMS
JCA
JMX
Tasks
Scheduling
Cache
TODO: https://docs.spring.io/spring/docs/current/spring-framework-reference/integration.html#cache, https://spring.io/guides/gs/caching/