天天看點

Spring 架構文檔之 Spring 架構概述Spring 架構概述

Spring 架構概述

Spring 助力 Java 企業級應用,提供在企業環境中增強 Java 語言所需的一切,支援基于 JVM 的 Groovy 和 Kotlin,很靈活的基于應用所需內建多種架構。

Spring 是什麼

通常所說的 Spring 指的就是 Spring 架構。

Spring 架構被拆分成不同子產品,應用可以按需擇選。核心容器子產品是最重要的,其包括配置模型和依賴注入機制。此外,Spring 架構為不同的應用架構都提供了基礎支援,主要有消息、事務性資料和持久化、Web。Web 包含基于 Servlet 的 Spring MVC Web 架構和 Spring WebFlux 響應式 Web 架構。

Spring 曆史

Spring 是在 2003 年作為對抗 J2EE 規範複雜性出現的。表面看 Spring 是 J2EE 的競争對手,實際上 Spring 是 J2EE 的補充。Spring 并不包含 Java EE 平台規範,隻是內建了來自 Java EE 中精選的規範。

  • Servlet API (JSR 340)
  • WebSocket API (JSR 356)
  • Concurrency Utilities (JSR 236)
  • JSON Binding API (JSR 367)
  • Bean Validation (JSR 303)
  • JPA (JSR 338)
  • JMS (JSR 914)
  • Dependency Injection (JSR 330)
  • Common Annotations (JSR 250)

Spring 設計理念

其實就是所要遵循的原則:

  • 為每一層提供選擇性,例如可以通過配置切換持久層提供者,而無需改動代碼
  • 可擴充點很多,相當靈活
  • 向後相容,穩步前進
  • 注力API建設,友善使用
  • 嚴把代碼品質,建構清晰文檔