首页IT科技spring各模块(第1章-Spring的模块与应用场景)

spring各模块(第1章-Spring的模块与应用场景)

时间2025-06-13 15:28:46分类IT科技浏览3966
导读:Spring 框架可以为 Java 应用程序开发提供全面的基础设施支持,它是现在非常流行的 Java 开源框架,对于一个 Java 开发人员来说,熟练掌握 Spring 是必不可少的。...

Spring 框架可以为 Java 应用程序开发提供全面的基础设施支持            ,它是现在非常流行的 Java 开源框架                  ,对于一个 Java 开发人员来说      ,熟练掌握 Spring 是必不可少的            。

控制反转(IoC)和依赖注入(DI)

IoC/DI 是 Spring 的核心设计模式         ,它的所有组件和功能                  ,都是基于这一模式设计的                  。IoC 意味着你设计好的对象交给容器控制         ,而不是在你的对象内部直接控制      ,而各个对象之间的依赖关系                  ,是在容器运行期间决定的            ,容器动态地将依赖关系注入到组件中   ,且不关心具体的对象或资源来自何处                  ,这大大降低了对象间的耦合度      。

一            、Spring模块

Spring 框架的模块:

1. 核心模块

名称 功能 spring-core 提供 IoC 和 DI 等功能 spring-beans 提供 Bean 容器等功能 spring-context 基于 core 和 beans 模块构建               ,扩展了功能 spring-context-support 支持整合第三方工具 spring-expression 提供 SpEL 表达式支持

2. AOP模块

名称 功能 spring-aop 提供 AOP(面向切面编程)支持 spring-aspects 提供 AspectJ 的集成 spring-instrumentation 提供类植入和类加载器的实现

3. 消息模块

名称 功能 spring-messaging 提供消息功能支持

4. 数据访问模块

名称 功能 spring-jdbc 提供 JDBC 抽象层来代替原生 JDBC 功能 spring-tx 提供编程式和声明式事务管理 spring-orm 提供主流的 ORM 框架 API 支持 spring-oxm 提供支持对象/XML映射抽象层 spring-jms 提供支持生产和消费的消息功能

5. Web模块

名称 功能 spring-web 提供 Web 功能支持 spring-webmvc 提供 Web 应用程序的 MVC 和 REST Web Services 支持 spring-websocket 提供 Web Socket 支持

6. 测试模块

名称 功能 spring-test 提供 JUnit 或 TestNG 等主流单元测试框架的集成

二                  、集成功能

Spring 对一些常用的功能组件都会基于 IoC/DI 模式来进行封装,简化其使用方式               ,以便开发人员开箱即用                  ,不仅可以提高开发效率   ,还降低了耦合            ,提高了测试性和可移植性         。

1. 目标原则

目标:

为复杂的企业集成解决方案提供简单的模型 便于开发基于异步      、消息驱动行为的应用 使现有 Spring 用户更直观         、更循序渐进地使用

原则:

降低组件的耦合度                  ,增加了模块化和可测试性 强制区分业务逻辑和组件集成逻辑 扩展点是抽象的      ,增加了扩展性和可移植性

2. 支持组件

Endpoint AMQP Spring ApplicationEvent File FTP/FTPS Adapters HTTP JDBC JPA JMS Mail MongoDb MQTT Redis Resource RMI RSocket SFTP Adapters STOMP Stream Syslog TCP and UDP WebFlux WebSockets Web Services XML Zookeeper

三                  、应用场景

Spring 框架由多个模块构成         ,它不是一个全有或者全无的解决方案                  ,我们完全可以按照需求使用它的全部或者部分特性                  。

1. 典型完整的 Spring Web 应用程序

Spring 完整使用场景:基于 Tomcat Servlet 容器         ,Web 层         、业务层和数据持久层都使用 Spring 模块实现         。

2. 使用第三方 Web 框架的应用程序

整合第三方 Web 框架:基于 Tomcat Servlet 容器      ,Web 层使用 Struts 等其他框架                  ,业务层和数据持久层都使用 Spring 模块实现      。

3. 基于 RPC 的应用程序

RPC 应用程序:基于 Tomcat Servlet 容器            ,使用Spring的 Hessian-   ,Rmi- 或HttpInvokerProxyFactoryBean 类构建远程调用程序                  。

4. 基于 EJB 的应用程序

EJB 应用程序:Spring 提供访问层和抽象层来管理 EJB            。

比如我们通常使用的 SSM 框架和 SSH 框架就是 Spring 框架和第三方框架的组合形式:

Web 层 业务层 数据持久层 SSM SpringMVC Spring MyBatis SSH Struts Spring Hibernate

不管我们怎么搭建应用程序框架                  ,Spring 都能很好的集成到我们应用程序中   。

声明:本站所有文章               ,如无特殊说明或标注,均为本站原创发布                  。任何个人或组织               ,在未征得本站同意时                  ,禁止复制      、盗用                  、采集            、发布本站内容到任何网站   、书籍等各类媒体平台               。如若本站内容侵犯了原著者的合法权益   ,可联系我们进行处理。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
什么网页游戏能赚人民币(现在什么网页游戏能赚钱吗-网页游戏能搬砖赚钱吗) seo 优化排名什么意思(揭秘SEO排名优化软件的真相,你需要知道的一切!)