天天看點

Spring架構基礎

一.spring架構基礎

spring:春天;輕量級的企業級開發架構,核心是ioc(控制反轉)和aop(面向切面程式設計)。

官網:spring.io

spring-->spring mvc -->mybatis-->spring boot-->springcloud-->spring security

spring的曆史,我們來百度一下,一塊看下,不再錄屏。

spring framework創始人,著名作者。 rod在悉尼大學不僅獲得了計算機學位,同時還獲得了音樂學位。更令人吃驚的是在回到軟體開發領域之前,他還獲得了音樂學的博士學位。

spring從2002年開始出來,到現在是spring 5.0了,快火了20年了,證明這個架構有其獨特之處、有其過人之處。

1.1 spring作用

架構就是比較成熟的解耦半成品程式,可以讓程式員在這個架構的基礎上實作良好的,“高内聚、低耦合”的程式,實作面向對象的“高可用、健壯性、可複用”。

1.2 spring 結構

jar包:

schema:概要|限制,一般都是xml檔案的限制,spring針對xml配置檔案有多重限制。

libs:存放spring5.0需要jar包,必備品

docs:spring開發英文原滋原味的幫助文檔

1.3 控制反轉

inversion of control,即“控制反轉”,不是什麼技術,而是一種設計思想。在java開發中,ioc意味着将你設計好的對象交給容器控制,而不是傳統的在你的對象内部直接控制(建立)。

控制反轉是一種設計思想而依賴注入是這種思想的具體實作。

控制反轉的實作=依賴查找+依賴注入

依賴查找:容器提供回調接口和上下文環境給元件

依賴注入:程式代碼不做定位查詢,這些工作由容器自行完成

bean:可重用元件;

javabean:java程式的可重用元件,要遠大于實體類的概念。比如說之前的userservice,userserviceimpl,都可以作為bean。

現實案例:

我們要吃飯,要做飯,牛排沙拉,自己動手,豐衣足食。

客戶要吃飯,客戶依賴于美團。是一種依賴關系。

餐飲公司要掙錢,依賴于美團,也是一種依賴關系。

延伸一下:

大家都是青年帥哥、美女,當然學習軟體開發的帥哥比較多,找對象,你自己一個一個找,比較麻煩,也比較累,這時候類似于我們程式員開發中的new 對象出來。不再new了,借助于一個平台,婚介所(世紀佳緣、珍愛網等),有各種各樣的妹子、帥哥,供你選擇。

1.4 spring實作ioc

1.4.1 pom.xml

1.4.2 gril類

1.4.3 配置檔案

1.4.3 測試類

總結: