一、web應(yīng)用
1.我們生活在web時(shí)代,每一分鐘都有上百萬(wàn)個(gè)網(wǎng)頁(yè)在生成,包含很多內(nèi)容
web應(yīng)用是一種客戶端-服務(wù)器端的程序
客戶端包括用戶界面和客戶端邏輯,運(yùn)行環(huán)境為web瀏覽器
2.常見(jiàn)的web應(yīng)用有:網(wǎng)頁(yè)郵件,在線銷售, 在線拍賣,維基,快捷的信息服務(wù)
客戶端的軟件就在網(wǎng)頁(yè)下載
3.瀏覽器后還有更多的東西

這些瀏覽器程序經(jīng)由web服務(wù)器下載下來(lái),很多動(dòng)態(tài)的東西在云端生成,一些應(yīng)用會(huì)用到數(shù)據(jù)庫(kù)甚至是外部系統(tǒng),瀏覽器需要的技術(shù)有:

同時(shí)web應(yīng)用也支持很多種語(yǔ)言:

基礎(chǔ)的web開(kāi)發(fā)語(yǔ)言是html和css,客戶端編程語(yǔ)言有:JAVAScript,actionScript用于flash,object-c和swift用于IOS的,java用于Android/ target=_blank class=infotextkey>安卓的;服務(wù)器端的語(yǔ)言有java,php,perl,Python,ruby,c#,nodejs
二、web應(yīng)用框架
根本沒(méi)有,辣雞
三、Spring-基于java的WAF
1.為甚使用spring
廣泛應(yīng)用于企業(yè)級(jí)java,高性能,易于測(cè)試,可復(fù)用性強(qiáng),簡(jiǎn)單輕量,模塊化比較好,內(nèi)置單元測(cè)試,支持MVC,能很好地支持相關(guān)協(xié)議,對(duì)其他技術(shù)有影響力,比如javaEE,hiberate,主動(dòng)開(kāi)發(fā),成長(zhǎng)中的新項(xiàng)目技術(shù)。
2.spring技術(shù)的歷史
2002年-2017年spring5.0

3.Spring Framework
Spring Web MVC

(1)瀏覽器發(fā)送請(qǐng)求給調(diào)度程序
(2)handlermApping選擇controller
(3)FC請(qǐng)求controller
(4)Controller返回model和view
(5)如果“模型和視圖”包含視圖的邏輯名稱,則FC將查詢將呈現(xiàn)響應(yīng)的視圖對(duì)象的解析程序,純屬?gòu)U話,就是/home,查詢r(jià)outer
4.dependence injection 依賴注入原則
(1)問(wèn)題所在:

你如果想該你的依賴關(guān)系,你就得改你class的源代碼,編譯的時(shí)候必須有依賴實(shí)現(xiàn)的具體代碼,而且你寫(xiě)的類不能單獨(dú)測(cè)試,因?yàn)橛兄苯右蕾囮P(guān)系,不能用stubs或者mocks直接修改依賴, 類中的代碼還重復(fù)創(chuàng)建、定位及管理它們之間的依賴。
(2)我們想要的是什么呢?

解耦合,編譯的時(shí)候也不用管依賴是怎么實(shí)現(xiàn)的,測(cè)試的時(shí)候能不用依賴,或者用別的依賴關(guān)系,移除location依賴的責(zé)任
OO Refresh

類的繼承

方法參數(shù)

最終解決方法:
這就是說(shuō)drawing這個(gè)類不知道shape,只有application類知道, 但是drawing這個(gè)類,他可以接受任何shape,它假設(shè)起其他的類會(huì)把shape初始化, appclass是create而不是draw,如果要添加新形狀就不用改draw這個(gè)類,因?yàn)閐raw這個(gè)類沒(méi)有依賴
POJO: plain old java object
java bean 是什么呢?
1、所有屬性為private
2、提供默認(rèn)構(gòu)造方法
3、提供getter和setter
4、實(shí)現(xiàn)serializable接口
DI的種類
1.基于構(gòu)造器的DI
2.基于setter的DI

3.接口注入:根本沒(méi)講什么雞兒玩意
Java Containers
Java containers manage Java objects: 管他們的初始化和生命周期
Tomcat servlet container: hosts
Spring beans container: business components/服務(wù)
如何初始化一個(gè)容器?
【1】想領(lǐng)取java相關(guān)知識(shí)可以關(guān)注我下方評(píng)論轉(zhuǎn)發(fā)后,私信“資料”。
【2】部分資料有時(shí)間限制,抓緊時(shí)間吧~、
感謝大家支持!