Spring 5.0全覽

hywang94發表於2020-10-19

一、簡化開發的基本策略:
    1.基於POJO的輕量級和最小侵入性程式設計
    2.通過依賴注入和麵向介面鬆耦合
    3.基於切面和慣性進行宣告式程式設計
    4.通過切面和模板減少樣板式程式碼

二、模組劃分
    1.核心模組
        spring-core
            依賴注入IOC與DI的最基本實現
        spring-beans
            Bean工廠與Bean的裝配
        spring-context
            定義基礎的Spring的Context上下文即IOC容器
        spring-context-support
            對Spring IOC容器的擴充套件支援,以及IOC子容器
        spring-context-indexer
            Spring的類管理元件和Classpath掃描
        spring-expression
            Spring表示式語言
    2.切面模組
        spring-ioc
            面向切面程式設計的應用模組,整合Asm,CGLib,JDKProxy
        spring-aspects
            整合AspectJ,AOP應用框架
        spring-instrument
            動態Class Loading模組
    3.資料訪問與整合
        spring-jdbc
            Spring提供的JDBC抽象框架的主要實現模組,用於簡化Spring JDBC操作
        spring-tx
            Spring JDBC事務控制實現模組
        spring-orm
            主要整合Hibernate,java Persistence API(JPA) 和Java Data Objects(JDO)等
        spring-oxm
            將java物件對映成XML資料,或者將XML資料對映成java物件
        spring-jms
            Java Messaging Service能夠傳送和接收資訊
    4.Web元件
        spring-web
            提供了最基礎Web支援,主要建立於核心容器之上,通過Servlet或者Listeners來初始化IOC容器
        spring-webmvc
            實現了Spring MVC(model-view-Controller)的Web應用
        spring-websocket
            主要是與Web前端的全雙工通訊的協議
        spring-webflux
            一個新的非阻塞函式式Reactive Web框架,可以用來建立非同步的,非阻塞,事件驅動的服務
    5.通訊報文
        spring-messaging
            從Spring4開始新加入的一個模組,主要職責是為Spring框架整合一些基礎的報文傳送應用
    6.測試
        spring-test
            主要是為測試提供支援的
    7.相容
        spring-framework-bom
            Bill of Materials. 解決Spring的不同模組依賴版本不同問題

三、版本命名規則(擴充套件)
    1.一般軟體版本
        版本號一般表示:X.Y.Z
        X
            表示主版本號(Major),當API的相容性發生變化時,X需遞增
        Y
            表示次版本號(Minor),當增加功能時(不影響API的相容性),Y需遞增
        Z
            表示修訂號(Patch),當做Bug修復時(不影響API相容性),Z需遞增
       2.常見的修飾詞
            Snapshot
                快照版
                    尚不穩定,尚處於開發中的版本
            Alpha
                內部版
                    嚴重缺陷基本完成修正並通過複測,但需要完整的功能測試
            Beat
                測試版
                    相對於alpha有很大的改進,消除了嚴重的錯誤,單還是存在一些缺陷
            RC
                終測版
                    Release Candidate(最終測試),即將作為正式版釋出
            Demo
                演示版
                    只整合了正式版部分功能,無法升級
            SP
                SP1
                    升級包
            Release
                穩定版
                    功能相對穩定,可以對外發行,但有時間限制
            Trial
                試用版
                    試用版,僅對部分使用者發行
            Full Version
                完整版
                    即正式版,已釋出
            Unregistered
                未註冊
                    有功能或時間限制的版本
            Standard
                標準版
                    能滿足正常使用的功能的版本
            Lite
                精簡版
                    只含有正式版的核心功能
            Enhance
                增強版
                    正式版,功能優化的版本
            Ultimate
                旗艦版
                    在標配版本升級體驗感更好的版本
            Professional
                專業版
                    針對更高要求功能,專業性更強的使用群體發行的版本
            Free
                自由版
                    自由免費使用的版本
            Upgrade
                升級版
                    有功能增強或修復已知bug
            Retail
                零售版
                    單獨發售
            Cardware
                共享版
                    公共許可證(IOS簽證)
            LTS
                維護版
                    該版本需要長期維護
    3.Spring版本命名規則
        Snapshot
            快照版
                尚不穩定,尚處於開發中的版本
        Release
            穩定版
                功能相對穩定,可以對外發行,但有時間限制
        GA
            正式版
                代表廣泛可用的穩定版
        M
            里程碑版
                具有一些全新的功能或是具有里程碑意義的版本
        RC
            終測版
                Release Candidate(最終測試),即將作為正式版釋出

相關文章