網站首頁 編程語言 正文
什么是 Spring 框架?
Spring 是一種輕量級開發框架,旨在提高開發人員的開發效率以及系統的可維護性。
Spring 官網:https://spring.io/
Spring 框架指的是 Spring Framework,它是很多模塊的集合,使用這些模塊可以很方便地協助我們進行開發。
????????這些模塊是:核心容器、數據訪問/集成,、Web、AOP(面向切面編程)、工具、消息和測試模塊。比如:Core Container 中的 Core 組件是Spring 所有組件的核心,Beans 組件和 Context 組件是實現IOC和依賴注入的基礎,AOP組件用來實現面向切面編程。
Spring 官網列出的 Spring 的 6 個特征:?
????????核心技術 :依賴注入(DI),AOP,事件(events),資源,i18n,驗證,數據綁定,類型轉換,SpEL
????????測試 :模擬對象,TestContext框架,Spring MVC 測試, WebTestClient
????????數據訪問 :事務,DAO支持,JDBC,ORM,編組XML
????????Web支持 : Spring MVC和Spring WebFlux Web框架
????????集成 :遠程處理,JMS,JCA,JMX,電子郵件,任務,調度,緩存
????????語言 :Kotlin,Groovy,動態語言
????????
使用 Spring 框架的好處是什么?
輕量:Spring 是輕量的,基本的版本大約 2MB
控制反轉:Spring 通過控制反轉實現了松散耦合,對象們給出它們的依賴,而不是創建或查找依賴的對象們
面向切面的編程(AOP):Spring 支持面向切面的編程,并且把應用業務邏輯和系統服務分開
容器:Spring 包含并管理應用中對象的生命周期和配置
MVC 框架:Spring 的 WEB 框架是個精心設計的框架,是 Web 框架的一 個很好的替代品
事務管理:Spring 提供一個持續的事務管理接口,可以擴展到上至本地事務下至全局事務(JTA)
異常處理:Spring 提供方便的 API 把具體技術相關的異常(比如由 JDBC,Hibernate or JDO 拋出的)轉化為一致的 unchecked 異常
Spring 框架中用到了哪些設計模式?
工廠設計模式 : Spring使用工廠模式通過 BeanFactory、 ApplicationContext 創建 bean 對象。
代理設計模式 : Spring AOP 功能的實現。
單例設計模式 : Spring 中的 Bean 默認都是單例的。
模板方法模式 : Spring 中 jdbcTemplate、hibernateTemplate 等以 Template 結尾的對數據庫操作的類,它們就使用到了模板模式。
包裝器設計模式 : 我們的項目需要連接多個數據庫,而且不同的客戶在每次訪問中根據需要會去訪問不同的數據庫。這種模式讓我們可以根據客戶的需求能夠動態切換不同的數據源。
觀察者模式: Spring 事件驅動模型就是觀察者模式很經典的一個應用。
適配器模式 :Spring AOP 的增強或通知(Advice)使用到了適配器模式、 spring MVC 中也是用到了適配器模式適配Controller
原文鏈接:https://blog.csdn.net/qq_52963857/article/details/131575704
- 上一篇:沒有了
- 下一篇:沒有了
相關推薦
- 2022-07-31 C語言算法積累加tag的循環隊列_C 語言
- 2022-06-19 mybatis-plus的sql語句打印問題小結_MsSql
- 2021-12-09 C語言實現將double/float?轉為字符串(帶自定義精度)_C 語言
- 2022-09-24 Python?Matplotlib通過plt.subplots創建子繪圖_python
- 2022-03-27 NGINX?權限控制文件預覽和下載的實現原理_nginx
- 2023-06-16 C語言中的結構體內嵌函數用法_C 語言
- 2023-10-13 Error: cannot push because a reference that you ar
- 2022-07-16 SpringMVC基礎工作原理以及實例
- 欄目分類
-
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支