一、后端開發(fā)的概念和技術(shù)棧
1.1什么是后端開發(fā)
? ? ? ?? 后端開發(fā)
1.2Java后端技術(shù)圖譜
二、JavaEE概念
多層式應(yīng)用(Multitier Application)——多層式應(yīng)用(或者多層式架構(gòu))分成多個(gè)邏輯部分招刹,大多在多層服務(wù)器上實(shí)現(xiàn)甸私。例如劝枣,三層應(yīng)用模型:用戶和瀏覽器埃元,應(yīng)用服務(wù)器,數(shù)據(jù)庫服務(wù)器谚赎。其中應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器就是分別在不同的服務(wù)器上來處理應(yīng)用的請求淫僻。
多層式服務(wù)(Multitier Service)——以三層架構(gòu)模型的服務(wù)為例,應(yīng)用服務(wù)器響應(yīng)用戶的請求壶唤。數(shù)據(jù)庫服務(wù)器響應(yīng)應(yīng)用服務(wù)器的查詢求情雳灵。
Java Bean——由一些包含私有屬性的Java類組成,對(duì)外提供get和set方法闸盔。從技術(shù)上講悯辙,這些類必須保證有一個(gè)不含參數(shù)的構(gòu)造器并且實(shí)現(xiàn)Serializable接口。
三迎吵、Spring框架特點(diǎn)及構(gòu)成
3.1 框架特點(diǎn)
1.非侵入式編程
? ?Spring框架的API不會(huì)再業(yè)務(wù)邏輯上出現(xiàn)躲撰,即業(yè)務(wù)邏輯是POJO(Plain Ordinary Java Object)。由于業(yè)務(wù)邏輯中沒有Spring的API击费,所以業(yè)務(wù)邏輯可以從Spring框架快速的移植到其他框架拢蛋。
2.容器
??Spring作為一個(gè)容器,可以管理對(duì)象的生命周期蔫巩、對(duì)象與對(duì)象之間的依賴關(guān)系谆棱】煅梗可以通過配置文件來定義對(duì)象,以及設(shè)置其他對(duì)象的依賴關(guān)系垃瞧。
3.IoC
? ?控制反轉(zhuǎn)(Inversion of Control)蔫劣,即創(chuàng)建被調(diào)用的實(shí)例不是由調(diào)用者完成,而是由Spring容器完成皆警,并注入調(diào)用者拦宣。
? 當(dāng)應(yīng)用IoC,一個(gè)對(duì)象依賴的其他對(duì)象會(huì)通過被動(dòng)的方式傳遞進(jìn)來信姓,而不是這個(gè)對(duì)象自己創(chuàng)建或查找依賴對(duì)象,即绸罗,不是對(duì)象從容器中查找依賴意推,而是容器在對(duì)象初始化時(shí)不等對(duì)象請求就主動(dòng)將依賴傳遞給它。
4.AOP
? ??面向切面編程珊蟀,是一種編程思想菊值,是面向?qū)ο缶幊蘋OP的補(bǔ)充。Spring提供面向?qū)ο缶幊痰闹С钟模试S通過分離應(yīng)用的業(yè)務(wù)邏輯與系統(tǒng)級(jí)服務(wù)(日志和事務(wù)管理)進(jìn)行開發(fā)腻窒。應(yīng)用對(duì)象只實(shí)現(xiàn)他們應(yīng)該做的(完成業(yè)務(wù)邏輯),并不負(fù)責(zé)其它的系統(tǒng)級(jí)關(guān)注點(diǎn)(日志或者事務(wù)的支持)磅崭。
? 可以把日志儿子、安全、事務(wù)管理等服務(wù)理解成一個(gè)“切面”砸喻,把很多被業(yè)務(wù)邏輯反復(fù)使用的服務(wù)完全剝離出來柔逼,以達(dá)到復(fù)用。然后將“切面”動(dòng)態(tài)的“織入”到業(yè)務(wù)邏輯中割岛,讓其享受此“切面”的服務(wù)愉适。
3.2 Spring框架構(gòu)成
核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要組件是BeanFactory癣漆,它是工廠模式的實(shí)現(xiàn)维咸。BeanFactory使用控制反轉(zhuǎn)(IOC) 模式將應(yīng)用程序的配置和依賴性規(guī)范與實(shí)際的應(yīng)用程序代碼分開。
Spring 上下文:Spring 上下文是一個(gè)配置文件惠爽,向 Spring 框架提供上下文信息癌蓖。Spring 上下文包括企業(yè)服務(wù),例如 JNDI疆股、EJB费坊、電子郵件、國際化旬痹、校驗(yàn)和調(diào)度功能附井。
Spring AOP:通過配置管理特性讨越,Spring AOP 模塊直接將面向方面的編程功能集成到了 Spring 框架中。所以永毅,可以很容易地使 Spring 框架管理的任何對(duì)象支持 AOP把跨。Spring AOP 模塊為基于 Spring 的應(yīng)用程序中的對(duì)象提供了事務(wù)管理服務(wù)。通過使用 Spring AOP沼死,不用依賴 EJB 組件着逐,就可以將聲明性事務(wù)管理集成到應(yīng)用程序中。
Spring DAO:JDBC DAO 抽象層提供了有意義的異常層次結(jié)構(gòu)意蛀,可用該結(jié)構(gòu)來管理異常處理和不同數(shù)據(jù)庫供應(yīng)商拋出的錯(cuò)誤消息耸别。異常層次結(jié)構(gòu)簡化了錯(cuò)誤處理,并且極大地降低了需要編寫的異常代碼數(shù)量(例如打開和關(guān)閉連接)县钥。Spring DAO 的面向 JDBC 的異常遵從通用的 DAO 異常層次結(jié)構(gòu)秀姐。
Spring ORM:Spring 框架插入了若干個(gè) ORM 框架,從而提供了 ORM 的對(duì)象關(guān)系工具若贮,其中包括 JDO省有、Hibernate 和 iBatis SQL Map。所有這些都遵從 Spring 的通用事務(wù)和 DAO 異常層次結(jié)構(gòu)谴麦。
Spring Web 模塊:Web 上下文模塊建立在應(yīng)用程序上下文模塊之上蠢沿,為基于 Web 的應(yīng)用程序提供了上下文。所以匾效,Spring 框架支持與 Jakarta Struts 的集成舷蟀。Web 模塊還簡化了處理多部分請求以及將請求參數(shù)綁定到域?qū)ο蟮墓ぷ鳌?/p>
Spring MVC 框架:MVC 框架是一個(gè)全功能的構(gòu)建 Web 應(yīng)用程序的 MVC 實(shí)現(xiàn)。通過策略接口弧轧,MVC 框架變成為高度可配置的雪侥,MVC 容納了大量視圖技術(shù),其中包括 JSP精绎、Velocity速缨、Tiles、iText 和 POI代乃。
四旬牲、Spring的起步練習(xí)步驟
1.jar包導(dǎo)入
2.bean文件
3.構(gòu)建Spring的配置文件applicationContex.xml
4.測試框架是否搭建完成
5.運(yùn)行結(jié)果