一、Spring和Spring Boot的區(qū)別
1、基于的概念不同
Spring是一個完整的企業(yè)級應(yīng)用程序開發(fā)框架,它提供了一系列的模塊,如Spring Core、Spring MVC、Spring Security等,可以用來構(gòu)建各種Java應(yīng)用程序。而Spring Boot則是基于Spring框架之上的一種開發(fā)框架,它主要是用于快速開發(fā)Spring應(yīng)用程序的。
2、環(huán)境配置不同
Spring的環(huán)境配置相對較為繁瑣,需要手動進(jìn)行配置,例如配置數(shù)據(jù)源、配置日志、配置Servlet等等。而Spring Boot則是提供了一套自動配置機(jī)制,通過約定大于配置的方式,可以減少開發(fā)者的環(huán)境配置工作量,從而快速構(gòu)建應(yīng)用程序。
3、啟動方式不同
Spring的啟動方式是通過XML配置文件或Java配置類來配置應(yīng)用程序,然后通過ApplicationContext來啟動應(yīng)用程序。而Spring Boot則是通過內(nèi)嵌的Tomcat、Jetty、Undertow等容器,可以直接使用java -jar命令啟動應(yīng)用程序。
4、依賴管理不同
在Spring中,需要手動添加各種依賴庫,例如Spring MVC、Spring Security等等。而在Spring Boot中,則是通過Spring Boot Starter依賴,可以一次性添加一系列的依賴庫,從而簡化依賴管理的工作量。
5、默認(rèn)配置不同
Spring Boot為開發(fā)者提供了一系列的默認(rèn)配置,例如日志、數(shù)據(jù)源等,大多數(shù)情況下可以直接使用默認(rèn)配置來構(gòu)建應(yīng)用程序。而在Spring中,需要手動配置這些內(nèi)容,增加了開發(fā)者的工作量。