Spring 的IOC
IOC 又稱(chēng)控制反轉(zhuǎn),是指對(duì)象的獲取方式被反轉(zhuǎn)。
傳統(tǒng)的對(duì)象創(chuàng)建方式,當(dāng)需要對(duì)象時(shí),直接進(jìn)行new創(chuàng)建,這種方式存在耦合。
IOC容器,不需要通過(guò)new創(chuàng)建,而是直接從IOC容器中獲取,容器中的對(duì)象在Spring啟動(dòng)時(shí),將定義的Bean裝載到IOC容器中。
Spring 的DI
DI又稱(chēng)依賴(lài)注入,是容器運(yùn)行期間,動(dòng)態(tài)將某種依賴(lài)關(guān)系注入。
存在聚合關(guān)系的兩個(gè)類(lèi),在IOC容器中,通過(guò)配置文件描述Bean之間依賴(lài)關(guān)系。
依賴(lài)注入的方式:接口注入、構(gòu)造方法注入和setter方法注入
Bean的裝配方式升級(jí)
- Spring最初使用XML裝配方式(配置對(duì)象增多以后,難以理解和維護(hù),關(guān)系更加復(fù)雜)
- Spring增加注解裝配方式,減少了XML的數(shù)量。
- Spring推出JavaConfig的裝配方式,通過(guò)Java代碼完成Bean的注入(@Configuration)
存在的問(wèn)題
通過(guò)JavaConfig和注解方式,雖然減少了XML,但是問(wèn)題依舊還是存在,比如依賴(lài)過(guò)多,配置太多,運(yùn)行和部署太繁瑣等問(wèn)題。
SpringBoot的價(jià)值
Spring的核心思想:約定優(yōu)于配置
約定優(yōu)于配置,這是一種設(shè)計(jì)范式,用于減少配置,降低開(kāi)發(fā)難度。
約定優(yōu)于配置思想體現(xiàn):
- Maven目錄的約定
- 默認(rèn)配置文件和配置屬性的約定
- SpringMVC的依賴(lài)自動(dòng)依賴(lài)內(nèi)置Tomcat
- Starter組件自動(dòng)裝配
構(gòu)建SpringBoot應(yīng)用
方式1:網(wǎng)頁(yè)生成
- 網(wǎng)頁(yè)訪(fǎng)問(wèn):https://start.spring.io/
-
填寫(xiě)相關(guān)參數(shù),點(diǎn)擊generate進(jìn)行自動(dòng)生成。
image.png - 解壓生成的壓縮包,導(dǎo)入IDEA。(File—>Open—>選擇工程的pom文件—>Ok)
- 引入spring-boot-starter-web,否則啟動(dòng)工程以后,直接Process finished with exit code 0
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
- 啟動(dòng)SpringDemoApplication。
