Spring 與 SpringBoot 的區別

概述

Spring 與 SpringBoot 有什麼區別???

前幾天被問到這個問題,一時間回答不上來,答成了 SSM 和 SpringBoot 的區別。

梳理一下 Spring 和 SpringBoot 到底有什麼區別,從 Spring 和 SpringBoot 兩方面入手。

Spring

什麼是 Spring?

在我看來,Spring 作爲一款 Java 開發的必選框架,也是一款“膠水”框架,它解決了 Java 企業級開發的複雜度問題,所謂的複雜度問題,就是耦合度問題。

傳統開發需要開發人員手動管理對象關係和生命週期,Spring 框架提出了兩大核心:IOC 與 AOP。有效的管理了開發中對象的生命週期問題,也提供了與很多框架整合的工具。

但是,Spring 最大的弊端,需要大量的 XML 配置,不管項目整體大小,都需要大量的配置文件搭建架構。

SpringBoot

SpringBoot 可以看作是對 Spring 框架的擴展,可以快速搭建獨立的 Spring 應用程序。

它內嵌了 Tomcat,Jetty 等容器,項目是一個 jar 包,通過 Application 入口類快速運行整個項目,提供了 Pom 簡化 Maven 的配置,避免了項目包與包的衝突,對第三方技術做了很好的封裝。

我認爲最重要的一點是,減少了大量的 XML 配置。SpringBoot 基於約定優於配置的理念,原先大量的配置都可以省去,並且不推薦 XML 配置,改爲 Java 配置。主要的配置可以寫在 apaplication.properties 文件中。

除了 application.properties 文件,還支持 yaml 格式的 application.yml 和 bootstrap.yml
差別在於配置文件的加載順序不同。
Spring Boot 配置文件的加載順序是 bootstrap.properties -> bootstrap.yml -> application.properties -> application.yml

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章