最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring中的模塊與應用場景詳解

 更新時間:2023年09月27日 09:36:07   作者:艾江南  
這篇文章主要介紹了Spring中的模塊與應用場景詳解,Spring 框架可以為 Java 應用程序開發(fā)提供全面的基礎設施支持,它是現(xiàn)在非常流行的 Java 開源框架,對于一個 Java 開發(fā)人員來說,熟練掌握 Spring 是必不可少的,需要的朋友可以參考下

前言

控制反轉(IoC)和依賴注入(DI)

IoC/DI 是 Spring 的核心設計模式,它的所有組件和功能,都是基于這一模式設計的。IoC 意味著你設計好的對象交給容器控制,而不是在你的對象內部直接控制,而各個對象之間的依賴關系,是在容器運行期間決定的,容器動態(tài)地將依賴關系注入到組件中,且不關心具體的對象或資源來自何處,這大大降低了對象間的耦合度。

一、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提供類植入和類加載器的實現(xiàn)

3. 消息模塊

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

4. 數(shù)據(jù)訪問模塊

名稱功能
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 模式來進行封裝,簡化其使用方式,以便開發(fā)人員開箱即用,不僅可以提高開發(fā)效率,還降低了耦合,提高了測試性和可移植性。

1. 目標原則

目標:

  • 為復雜的企業(yè)集成解決方案提供簡單的模型
  • 便于開發(fā)基于異步、消息驅動行為的應用
  • 使現(xiàn)有 Spring 用戶更直觀、更循序漸進地使用

原則:

  • 降低組件的耦合度,增加了模塊化和可測試性
  • 強制區(qū)分業(yè)務邏輯和組件集成邏輯
  • 擴展點是抽象的,增加了擴展性和可移植性

2. 支持組件

  1. Endpoint
  2. AMQP
  3. Spring ApplicationEvent
  4. File
  5. FTP/FTPS Adapters
  6. HTTP
  7. JDBC
  8. JPA
  9. JMS
  10. Mail
  11. MongoDb
  12. MQTT
  13. Redis
  14. Resource
  15. RMI
  16. RSocket
  17. SFTP Adapters
  18. STOMP
  19. Stream
  20. Syslog
  21. TCP and UDP
  22. WebFlux
  23. WebSockets
  24. Web Services
  25. XML
  26. Zookeeper

三、應用場景

Spring 框架由多個模塊構成,它不是一個全有或者全無的解決方案,我們完全可以按照需求使用它的全部或者部分特性。

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

圖片

Spring 完整使用場景:基于 Tomcat Servlet 容器,Web 層、業(yè)務層和數(shù)據(jù)持久層都使用 Spring 模塊實現(xiàn)。

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

圖片

整合第三方 Web 框架:基于 Tomcat Servlet 容器,Web 層使用 Struts 等其他框架,業(yè)務層和數(shù)據(jù)持久層都使用 Spring 模塊實現(xiàn)。

3. 基于 RPC 的應用程序

圖片

RPC 應用程序:基于 Tomcat Servlet 容器,使用Spring的 Hessian-,Rmi- 或HttpInvokerProxyFactoryBean 類構建遠程調用程序。

4. 基于 EJB 的應用程序

圖片

EJB 應用程序:Spring 提供訪問層和抽象層來管理 EJB。

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

框架Web 層業(yè)務層數(shù)據(jù)持久層
SSMSpringMVCSpringMyBatis
SSHStrutsSpringHibernate

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

到此這篇關于Spring中的模塊與應用場景詳解的文章就介紹到這了,更多相關Spring模塊與應用場景內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 談Java static關鍵字的用法與好處

    談Java static關鍵字的用法與好處

    這篇文章主要為大家詳細介紹了Java static關鍵字的用法與好處,感興趣的朋友可以參考一下
    2016-05-05
  • 快速解決springboot在yml配置了啟動端口但啟動還是8080問題

    快速解決springboot在yml配置了啟動端口但啟動還是8080問題

    這篇文章主要介紹了快速解決springboot在yml配置了啟動端口但啟動還是8080問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • Java設計模式之命令模式

    Java設計模式之命令模式

    這篇文章介紹了Java設計模式之命令模式,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-10-10
  • 利用Redis實現(xiàn)延時處理的方法實例

    利用Redis實現(xiàn)延時處理的方法實例

    這篇文章主要給大家介紹了關于利用Redis實現(xiàn)延時處理的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者使用Redis具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-03-03
  • 解讀Spring-Context的作用及用法

    解讀Spring-Context的作用及用法

    這篇文章主要介紹了Spring-Context的作用及用法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Java 設計模式之責任鏈模式及異步責任鏈詳解

    Java 設計模式之責任鏈模式及異步責任鏈詳解

    顧名思義,責任鏈模式(Chain of Responsibility Pattern)為請求創(chuàng)建了一個接收者對象的鏈。這種模式給予請求的類型,對請求的發(fā)送者和接收者進行解耦。這種類型的設計模式屬于行為型模式
    2021-11-11
  • Java開發(fā)過程中關于異常處理的詳解

    Java開發(fā)過程中關于異常處理的詳解

    異常是程序中的一些錯誤,但不是所有錯誤都是異常,且錯誤有時候是可以避免的。比如說,你的代碼少一個分號,那運行出來結果是提示是錯誤 java.lang.Error;如果你用System.out.println(11/0),那么你是因為你用0做了除數(shù),會拋出 java.lang.ArithmeticException 的異常
    2021-10-10
  • java中的final關鍵字詳解及實例

    java中的final關鍵字詳解及實例

    這篇文章主要介紹了 java中的final關鍵字詳解及實例的相關資料,需要的朋友可以參考下
    2017-03-03
  • SpringBoot基于RabbitMQ實現(xiàn)消息可靠性的方法

    SpringBoot基于RabbitMQ實現(xiàn)消息可靠性的方法

    RabbitMQ 提供了 publisher confirm 機制來避免消息發(fā)送到 MQ 過程中丟失,這種機制必須給每個消息指定一個唯一ID,消息發(fā)送到MQ以后,會返回一個結果給發(fā)送者,表示消息是否處理成功,本文給大家介紹了SpringBoot基于RabbitMQ實現(xiàn)消息可靠性的方法,需要的朋友可以參考下
    2024-04-04
  • SpringBoot自定義Banner使用詳解

    SpringBoot自定義Banner使用詳解

    這篇文章主要介紹了SpringBoot自定義Banner使用詳解,啟動 Spring Boot 時,幾乎總是能在控制臺上方看到如下橫幅,這個也叫字符畫、英文ASCII藝術字,這就是banner,我們來看一下如何使用,需要的朋友可以參考下
    2024-01-01

最新評論

黔江区| 冀州市| 普定县| 翁源县| 姜堰市| 浪卡子县| 苏州市| 乐平市| 武冈市| 眉山市| 邵阳县| 宁乡县| 峨眉山市| 康定县| 祥云县| 安陆市| 安化县| 秭归县| 上犹县| 长宁县| 容城县| 邹平县| 石河子市| 方正县| 宁晋县| 景德镇市| 巴彦淖尔市| 平塘县| 新昌县| 昭平县| 普洱| 邹城市| 旅游| 鄂州市| 吴江市| 民权县| 南宁市| 沁阳市| 合水县| 昭觉县| 太仓市|