Spring(概念和ioc入門祠锣、ioc操作xml配置文件)

教程視頻(https://www.boxuegu.com/course/free/detail/?id=169)

spring的概念

1.spring是開源的輕量級框架

2.spring核心主要兩部分

(1)aop:面向切面編程腻窒,擴展功能不是修改源代碼實現(xiàn)。

(2)ioc:控制反轉(zhuǎn)

比如有一個類,在類里面有方法(不是靜態(tài)方法),調(diào)用類里面的方法袁勺,創(chuàng)建類的對象,使用對象調(diào)用方法畜普,創(chuàng)建類對象的過程期丰,需要new出來對象-ioc就是 把對象的創(chuàng)建不是通過new方式實現(xiàn),而是交給spring配置創(chuàng)建類對象吃挑。

3.spring是一站式框架

(1)spring在javaee三層結(jié)構(gòu)中钝荡,每一層都是提供不同的解決技術(shù)。

-web層:springMVC

-service層:spring的ioc

-dao層:spring的jdbcTemplate


spring的ioc操作

1.把對象的創(chuàng)建交給spring進行管理

2.ioc操作兩個部分

(1)ioc的配置方式方法

(2)ioc的注解方式

.ioc底層原理

1.ioc底層原理使用技術(shù)

(1)xml配置文件

(2?)dom4j解決xml

(3?)工廠設(shè)計模式

(4)反射

2.畫圖分析ioc實習原理


.IOC入門案例

第一步 導入jar包

第二步 創(chuàng)建類舶衬,在類里面創(chuàng)建方法

第三步 創(chuàng)建spring配置文件埠通,配置創(chuàng)建類

(1)spring核心配置文件名和位置不是固定的 建議放到src下面(官方建議名字applicationConext.xml)

(2)引入schema約束??

(3)配置對象創(chuàng)建

第四步 寫代碼測試對象創(chuàng)建

(1)這段代碼在測試中使用


.配置文件沒有提示問題

1.spring引入schema約束,把約束文件引入到eclipse中

(1)復制約束路徑


.Spring的bean管理(xml方式)

.Bean實例化的方式

1.在spring里面通過配置文件創(chuàng)建對象

2.bean實例化三種方式實現(xiàn)

第一種 實用類的無參數(shù)構(gòu)造創(chuàng)建(常用)

(1)提示:如果已經(jīng)有一個有參的構(gòu)造函數(shù)逛犹,系統(tǒng)不會默認生成一個無參的構(gòu)造函數(shù)

第二種 使用靜態(tài)工廠創(chuàng)建(不常用)

(1)創(chuàng)建靜態(tài)的方法端辱,返回類對象

第三種 使用實例工廠創(chuàng)建(不常用)

(1)創(chuàng)建不是靜態(tài)的方法,返回類對象

(2)使用實例工廠創(chuàng)建


.Bean標簽常用屬性

(1)id屬性? :起名稱虽画,id屬性值名稱任意命名舞蔽。

? -id屬性值,不能包含特殊特殊符號码撰。 -根據(jù)id值得到配置對象

(2)class屬性:創(chuàng)建對象所在類的全路徑

(3)name屬性:功能和id屬性一樣的渗柿。

id屬性值不能包含特殊符號,但是在name屬性值里面可以包含特殊符號脖岛。

(4)scope屬性:Bean的作用范圍

singleton:默認值朵栖,單例

prototype:多例

request:創(chuàng)建對象把對象放到request域里面

session:創(chuàng)建對象吧對象放到session域里面

globalSession:創(chuàng)建對象把對象放到globalSession里面


.屬性注入介紹

1.創(chuàng)建對象時候砾省,向類里面屬性里面設(shè)置值

2.屬性注入的方式介紹(三種方式)

java代碼的注入方式1.使用set方法注入2.使用有參數(shù)構(gòu)造注入3.使用接口注入

3.在spring框架里面,支持前面的兩種方式

(1)set方法注入

(2)有參數(shù)構(gòu)造注入(不常用)

注入對象類型屬性(重點)

1.創(chuàng)建service類和dao類? (1)在service得到dao對象

2.具體事項過程 (1)? 在service里面把dao作為類型屬性? ?(2)生成dao類型屬性的set方法

P名稱空間注入

注入復雜類型屬性

1 數(shù)組

2 list集合

3 map集合

4.properties類型


IOC和DI的區(qū)別

(1)IOC:控制反轉(zhuǎn)混槐,把對象創(chuàng)建交給spring進行配置

(2)DI:依賴注入编兄,向類里面的屬性中設(shè)置值

(3)關(guān)系:依賴注入不能單獨存在,需要在ioc基礎(chǔ)之上完成操作


.Spring整合web項目原理(重點)

1.加載spring核心配置文件

(1)new對象声登,功能可以實現(xiàn)狠鸳,效率很低

2.實現(xiàn)思想:把加載配置文件和創(chuàng)建對象過程,在服務(wù)器啟動時候完成

3.實現(xiàn)原理:

(1)ServletContext對象

(2)監(jiān)聽器(ServletContextListener接口)

(3)具體使用?

在服務(wù)器啟動時候悯嗓,為每個項目創(chuàng)建ServletContext對象在ServletContext對象創(chuàng)建時候件舵,使用監(jiān)聽器可以具體到ServletContext對象在什么時候創(chuàng)建

-使用監(jiān)聽器監(jiān)聽到ServletContext對象創(chuàng)建時候,

-加載spring配置文件脯厨,把配置文件配置對象創(chuàng)建

-把創(chuàng)建出來的對象放到ServletContext域?qū)ο罄锩妫╯etAttribute方法)

-獲取對象時候铅祸,到ServletContext域得到(getAttribute方法)

在spring里面不需要我們自己寫代碼實現(xiàn),幫封裝

(1)封裝了一個監(jiān)聽器合武,只需要配置監(jiān)聽器就可以了

(2)配置監(jiān)聽器之前做事情临梗,導入spring整合web項目jar包

(3)指定spring配置文件位置

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市稼跳,隨后出現(xiàn)的幾起案子盟庞,更是在濱河造成了極大的恐慌,老刑警劉巖汤善,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件什猖,死亡現(xiàn)場離奇詭異,居然都是意外死亡红淡,警方通過查閱死者的電腦和手機不狮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來在旱,“玉大人摇零,你說我怎么就攤上這事【痹ǎ” “怎么了遂黍?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長俊嗽。 經(jīng)常有香客問我雾家,道長,這世上最難降的妖魔是什么绍豁? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任芯咧,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘敬飒。我一直安慰自己邪铲,他們只是感情好,可當我...
    茶點故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布无拗。 她就那樣靜靜地躺著带到,像睡著了一般。 火紅的嫁衣襯著肌膚如雪英染。 梳的紋絲不亂的頭發(fā)上揽惹,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天,我揣著相機與錄音四康,去河邊找鬼搪搏。 笑死,一個胖子當著我的面吹牛闪金,可吹牛的內(nèi)容都是我干的疯溺。 我是一名探鬼主播,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼哎垦,長吁一口氣:“原來是場噩夢啊……” “哼囱嫩!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起撼泛,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤挠说,失蹤者是張志新(化名)和其女友劉穎澡谭,沒想到半個月后愿题,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡蛙奖,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片伟骨。...
    茶點故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡咆畏,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出攒砖,到底是詐尸還是另有隱情缸兔,我是刑警寧澤,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布吹艇,位于F島的核電站惰蜜,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏受神。R本人自食惡果不足惜抛猖,卻給世界環(huán)境...
    茶點故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧财著,春花似錦联四、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至伟姐,卻和暖如春鱼辙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背玫镐。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工倒戏, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人恐似。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓杜跷,卻偏偏與公主長得像,于是被迫代替她去往敵國和親矫夷。 傳聞我的和親對象是個殘疾皇子葛闷,可洞房花燭夜當晚...
    茶點故事閱讀 44,689評論 2 354

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)双藕,斷路器淑趾,智...
    卡卡羅2017閱讀 134,654評論 18 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,807評論 6 342
  • 從三月份找實習到現(xiàn)在,面了一些公司忧陪,掛了不少扣泊,但最終還是拿到小米、百度嘶摊、阿里延蟹、京東、新浪叶堆、CVTE阱飘、樂視家的研發(fā)崗...
    時芥藍閱讀 42,243評論 11 349
  • 冬柿子 (一) 雪掩深山凹,丹柿迎風俏虱颗。 無懼天地凍沥匈,傾情枝頭笑。 (二) 飛雪吻佳人忘渔,盛裝巧掩身高帖。 頭冠冰晶帽,...
    惠曉紅閱讀 549評論 0 3
  • 2017年11月2日 周四 晴 今天周四辨萍,照例早讀課誦讀《小古文100課》第14課《松》也是一篇狀物類...
    琴子老師閱讀 255評論 0 8