I blog article URL: https://www.peretang.com/basic-knowledge-of-spring-framework/
Introduction to Spring Framework
Spring, an open-source framework, was created by Rod Johnson. Spring is created to address the complexities of enterprise application development, allowing simple javabeans/pojo to accomplish things that were previously only ejb[1]. Spring also provides a number of APIs to simplify integration with other third-party frameworks.
With spring, you'll find that spring solves a lot of problems, but ultimately, all of the api/solutions from spring can be traced back to spring's most fundamental concept of " simplifying Java development ."
▲spring= Simplifying Java Development
Spring Strategy and Core
Spring 4 Key strategies/cores to reduce the complexity of Java development
1. Pojo-based lightweight and minimally intrusive programming
2. Loose coupling via Dependency injection and interface-oriented
3. Declarative programming based on facets and conventions
4. Reduce plate code by cutting and stencil
All of the basic spring api/solutions can be traced back to one or more of the above policies.
Spring drawbacks
While spring can reduce complexity, spring is already a complex framework as spring develops to 4.X today.
Another spring's original goal was a lightweight container framework, but the development of spring4.x is now a heavy-weight framework.
Finally, although spring is the smallest invasive, it gives us the greatest tolerance.
Spring Module Core Module
Spring-core,spring-beans: The framework's most basic module, which provides functions such as IOC and dependency injection
Spring-context: Provides a context object for accessing an object
Spring-context-support: Provides the ability to integrate third-party libraries into context
Spring-expression (SPEL): Provides powerful expression language support to reduce workload
AOP Modules
SPRING-AOP: Provides a facet-oriented API implementation that conforms to the AOP specification
Spring-aspects: provides integration with ASPECTJ
Data Access Integration Module
SPRING-JDBC: Provides APIs to simplify JDBC programming
SPRING-TX: Provides an API to simplify transaction management and programming
Spring-orm: Provides a simplified ORM specification [2] Programming API and provides support for JPA, hibernate
SPRING-OXM: Provides API for simplifying the OXM specification [3] Programming
SPRING-JMS: Provides APIs that simplify the JMS specification [4] Programming
Web Module
Spring-web: Provides an API to simplify basic Web functionality programming
Spring-webmvc,spring-webmvc-portlet: Provides APIs to simplify mvc[5] and restful[6] programming
Spring-websocket: Provides an API that simplifies websocket authoring
Test module
Spring-test: Provides components that support unit testing and integration testing, and simplifies the API for test case programming
Information module
Spring-messaging: Support for message schemas and protocols
Device module
Spring-instrument: Provides class detection support and class loader implementations for use in some application servers
Spring-instrument-tomcat: Provides class detection support and class loader implementations for use in Tomcat
Spring Frame composition
Reference
Spring Framework Reference
Spring in Action
Comments
[1] The EJB here refers to ejb2.x, because the EJB specification can also be implemented using Pojo starting with the ejb3.x specification.
[2] Object-relational mapping, used to map objects represented by the object model to the SQL-based relational model database structure.
[3] Object XML Mapping, a mapping between a data entity object and an XML node.
[4] A member of the Java Messaging Service, which is responsible for interacting with the information middleware (MOM) API. Reference: Basic knowledge of Java EE specifications
[5] MVC is a pattern of creating WEB applications using MVC (Model View Controller-View-controller) design.
[6] RESTful a software architecture style.
Spring Framework Basics