day01 Spring起步

一羽戒、后端開發(fā)的概念和技術(shù)

#1.1 什么是后端開發(fā)

? ? ?百度https://www.iteye.com/news/32213

#1.2 java后端開發(fā)技術(shù)圖譜


#1.3 JavaWeb掌握什么缤沦?

1、網(wǎng)絡(luò)通信協(xié)議:http

2易稠、服務(wù)器:tomcat(開源)缸废、jeety(嵌入式)、weblogic(商用)

3缩多、云服務(wù)器:阿里云呆奕、騰訊云、百度云

4衬吆、servlet、過(guò)濾器绳泉、監(jiān)聽器

5逊抡、其他:跨域、負(fù)載均衡零酪、緩存冒嫡、日志等

#二、Spring框架特點(diǎn)及構(gòu)成

#2.1 特點(diǎn)

1.方便解耦四苇,簡(jiǎn)化開發(fā)

通過(guò)Spring提供的IoC容器孝凌,我們可以將對(duì)象之間的依賴關(guān)系交由Spring進(jìn)行控制,避免硬編碼所造成的過(guò)度程序耦合月腋。有了Spring蟀架,用戶不必再為單實(shí)例模式類瓣赂、屬性文件解析等這些很底層的需求編寫代碼,可以更專注于上層的應(yīng)用片拍。

2.AOP編程的支持

通過(guò)Spring提供的AOP功能煌集,方便進(jìn)行面向切面的編程,許多不容易用傳統(tǒng)OOP實(shí)現(xiàn)的功能可以通過(guò)AOP輕松應(yīng)付捌省。

3.聲明事物的支持

在Spring中苫纤,我們可以從單調(diào)煩悶的事務(wù)管理代碼中解脫出來(lái),通過(guò)聲明式方式靈活地進(jìn)行事務(wù)的管理纲缓,提高開發(fā)效率和質(zhì)量卷拘。

4.方便程序的測(cè)試

可以用非容器依賴的編程方式進(jìn)行幾乎所有的測(cè)試工作,在Spring里祝高,測(cè)試不再是昂貴的操作栗弟,而是隨手可做的事情。例如:Spring對(duì)Junit4支持褂策,可以通過(guò)注解方便的測(cè)試Spring程序横腿。

5.方便集成各種優(yōu)秀框架

Spring不排斥各種優(yōu)秀的開源框架,相反斤寂,Spring可以降低各種框架的使用難度耿焊,Spring提供了對(duì)各種優(yōu)秀框架(如Struts,Hibernate、Hessian遍搞、Quartz)等的直接支持罗侯。

6.降低Java EE API的使用難度

Spring對(duì)很多難用的Java EE API(如JDBC,JavaMail溪猿,遠(yuǎn)程調(diào)用等)提供了一個(gè)薄薄的封裝層钩杰,通過(guò)Spring的簡(jiǎn)易封裝,這些Java EE API的使用難度大為降低诊县。

7.Java 源碼是經(jīng)典學(xué)習(xí)范例

Spring的源碼設(shè)計(jì)精妙讲弄、結(jié)構(gòu)清晰、匠心獨(dú)用依痊,處處體現(xiàn)著大師對(duì)Java設(shè)計(jì)模式靈活運(yùn)用以及對(duì)Java技術(shù)的高深造詣避除。Spring框架源碼無(wú)疑是Java技術(shù)的最佳實(shí)踐范例。如果想在短時(shí)間內(nèi)迅速提高自己的Java技術(shù)水平和應(yīng)用開發(fā)水平胸嘁,學(xué)習(xí)和研究Spring源碼將會(huì)使你收到意想不到的效果瓶摆。

#2.2 構(gòu)成

應(yīng)用上下文(Context)模塊

核心模塊的BeanFactory使Spring成為一個(gè)容器,而上下文模塊使它成為一個(gè)框架性宏。這個(gè)模塊擴(kuò)展了BeanFactory的概念群井,增加了對(duì)國(guó)際化(I18N)消息、事件傳播以及驗(yàn)證的支持毫胜。

另外书斜,這個(gè)模塊提供了許多企業(yè)服務(wù)诬辈,例如電子郵件、JNDI訪問(wèn)菩佑、EJB集成自晰、遠(yuǎn)程以及時(shí)序調(diào)度(scheduling)服務(wù)。也包括了對(duì)模版框架例如Velocity和FreeMarker集成的支持稍坯。

Spring的AOP模塊

Spring在它的AOP模塊中提供了對(duì)面向切面編程的豐富支持酬荞。這個(gè)模 塊是在Spring應(yīng)用中實(shí)現(xiàn)切面編程的基礎(chǔ)。為了確保Spring與其它AOP框架的互用性瞧哟,Spring的AOP支持基于AOP聯(lián)盟定義的API混巧。 AOP聯(lián)盟是一個(gè)開源項(xiàng)目,它的目標(biāo)是通過(guò)定義一組共同的接口和組件來(lái)促進(jìn)AOP的使用以及不同的AOP實(shí)現(xiàn)之間的互用性勤揩。通過(guò)訪問(wèn)他們的站點(diǎn)咧党,你可以找 到關(guān)于AOP聯(lián)盟的更多內(nèi)容。

Spring的AOP模塊也將元數(shù)據(jù)編程引入了Spring陨亡。使用Spring的元數(shù)據(jù)支持傍衡,你可以為你的源代碼增加注釋,指示Spring在何處以及如何應(yīng)用切面函數(shù)负蠕。

JDBC抽象和DAO模塊

使用JDBC經(jīng)常導(dǎo)致大量的重復(fù)代碼蛙埂,取得連接、創(chuàng)建語(yǔ)句遮糖、處理結(jié)果集绣的,然后關(guān)閉連接。Spring的JDBC和DAO模塊抽取了這些重復(fù)代碼欲账,因此你可以保持你的數(shù)據(jù)庫(kù)訪問(wèn)代碼干凈簡(jiǎn)潔屡江,并且可以防止因關(guān)閉數(shù)據(jù)庫(kù)資源失敗而引起的問(wèn)題。

這個(gè)模塊還在幾種數(shù)據(jù)庫(kù)服務(wù)器給出的錯(cuò)誤消息之上建立了一個(gè)有意義的異常層赛不。使你不用再試圖破譯神秘的私有的SQL錯(cuò)誤消息惩嘉!

另外,這個(gè)模塊還使用了Spring的AOP模塊為Spring應(yīng)用中的對(duì)象提供了事務(wù)管理服務(wù)踢故。

對(duì)象/關(guān)系映射集成模塊

對(duì)那些更喜歡使用對(duì)象/關(guān)系映射工具而不是直接使用JDBC的 人宏怔,Spring提供了ORM模塊。Spring并不試圖實(shí)現(xiàn)它自己的ORM解決方案畴椰,而是為幾種流行的ORM框架提供了集成方案,包括 Hibernate鸽粉、JDO和iBATIS SQL映射斜脂。Spring的事務(wù)管理支持這些ORM框架中的每一個(gè)也包括JDBC。

Spring的Web模塊

Web上下文模塊建立于應(yīng)用上下文模塊之上触机,提供了一個(gè)適合于Web應(yīng)用的上下文帚戳。另外玷或,這個(gè)模塊還提供了一些面向服務(wù)支持。例如:實(shí)現(xiàn)文件上傳的multipart請(qǐng)求片任,它也提供了Spring和其它Web框架的集成偏友,比如Struts、WebWork对供。

Spring的MVC框架

Spring為構(gòu)建Web應(yīng)用提供了一個(gè)功能全面的MVC框架位他。雖然Spring可以很容易地與其它MVC框架集成,例如Struts产场,但Spring的MVC框架使用IoC對(duì)控制邏輯和業(yè)務(wù)對(duì)象提供了完全的分離鹅髓。

它也允許你聲明性地將請(qǐng)求參數(shù)綁定到你的業(yè)務(wù)對(duì)象中,此外京景,Spring的MVC框架還可以利用Spring的任何其它服務(wù)窿冯,例如國(guó)際化信息與驗(yàn)證。

Spring框架Web頁(yè)面亂碼問(wèn)題

在做java Web 項(xiàng)目時(shí)确徙,亂碼問(wèn)題時(shí)常都會(huì)出現(xiàn)醒串,解決方法也不盡相同,有簡(jiǎn)單也有復(fù)雜的鄙皇;如果加入了Spring框架之后就不一樣了芜赌,可以采用Spring框架自帶的過(guò)濾 器CharacterEncodingFilter,這樣可以大大減輕了我們的工作量育苟,即簡(jiǎn)單方便又容易理解较鼓,配置方式如下:在web.xml文件中 filter的位置加上如下內(nèi)容:

<filter>

<filter-name>encodingFilter</ filter-name >

<filter-class>

org.springframework.web.filter.CharacterEncodingFilter

</filter-class>

<init-param>

<param-name>encoding</param-name>

<param-value>UTF-8</param-value>

</init-param>

<init-param>

<param-name>forceEncoding</param-name>

<param-value>true</param-value>

</init-param>

</filter>

<filter-mapping>

<filter-name>encodingFilter</filter-name>

<url-pattern>*</url-pattern>

</filter-mapping>

#三、Spring的起步練習(xí)步驟

3.1违柏、maven下載配置

-下載maven安裝包

-非系統(tǒng)給盤符下創(chuàng)建(maven.jar)文件夾

-idea環(huán)境配置:

File——Other Settings——Settings for New Projects如圖


3.2建立項(xiàng)目并添加maven

在項(xiàng)目上右擊——Add Frameworks如圖



?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末博烂,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子漱竖,更是在濱河造成了極大的恐慌禽篱,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,817評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件馍惹,死亡現(xiàn)場(chǎng)離奇詭異躺率,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)万矾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門悼吱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人良狈,你說(shuō)我怎么就攤上這事后添。” “怎么了薪丁?”我有些...
    開封第一講書人閱讀 157,354評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵遇西,是天一觀的道長(zhǎng)馅精。 經(jīng)常有香客問(wèn)我,道長(zhǎng)粱檀,這世上最難降的妖魔是什么洲敢? 我笑而不...
    開封第一講書人閱讀 56,498評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮茄蚯,結(jié)果婚禮上压彭,老公的妹妹穿的比我還像新娘。我一直安慰自己第队,他們只是感情好哮塞,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,600評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著凳谦,像睡著了一般忆畅。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上尸执,一...
    開封第一講書人閱讀 49,829評(píng)論 1 290
  • 那天家凯,我揣著相機(jī)與錄音,去河邊找鬼如失。 笑死绊诲,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的褪贵。 我是一名探鬼主播掂之,決...
    沈念sama閱讀 38,979評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼脆丁!你這毒婦竟也來(lái)了世舰?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,722評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤槽卫,失蹤者是張志新(化名)和其女友劉穎跟压,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體歼培,經(jīng)...
    沈念sama閱讀 44,189評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡震蒋,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,519評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了躲庄。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片查剖。...
    茶點(diǎn)故事閱讀 38,654評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖噪窘,靈堂內(nèi)的尸體忽然破棺而出梗搅,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 34,329評(píng)論 4 330
  • 正文 年R本政府宣布无切,位于F島的核電站,受9級(jí)特大地震影響丐枉,放射性物質(zhì)發(fā)生泄漏哆键。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,940評(píng)論 3 313
  • 文/蒙蒙 一瘦锹、第九天 我趴在偏房一處隱蔽的房頂上張望籍嘹。 院中可真熱鬧,春花似錦弯院、人聲如沸辱士。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,762評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)颂碘。三九已至,卻和暖如春椅挣,著一層夾襖步出監(jiān)牢的瞬間头岔,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,993評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工鼠证, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留峡竣,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,382評(píng)論 2 360
  • 正文 我出身青樓量九,卻偏偏與公主長(zhǎng)得像适掰,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子荠列,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,543評(píng)論 2 349

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

  • 一类浪、后端開發(fā)的概念和技術(shù)棧 1.1后端開發(fā) 1.2技術(shù)棧 二、javaEE 2.1什么是javaEE JavaEE...
    山下_26閱讀 212評(píng)論 0 2
  • 一弯予、后端開發(fā)的概念和技術(shù)棧 1.1 什么是后端開發(fā) https://blog.csdn.net/o4dc8ojo7...
    錯(cuò)過(guò)_16e3閱讀 495評(píng)論 0 5
  • 一戚宦、后端開發(fā)的概念和技術(shù)棧 1.1 什么是后端開發(fā)? 后端相較于前端來(lái)說(shuō)锈嫩,更多的是與數(shù)據(jù)庫(kù)進(jìn)行交互以處理相應(yīng)的業(yè)務(wù)...
    朱芮林閱讀 269評(píng)論 0 0
  • spring官方文檔:http://docs.spring.io/spring/docs/current/spri...
    牛馬風(fēng)情閱讀 1,650評(píng)論 0 3
  • 藝術(shù)作品沒(méi)有實(shí)效性 繪畫作品被界定為藝術(shù)作品我認(rèn)為必須具備幾個(gè)方面的條件:1受楼、繪畫作品必須是手工繪制或特殊工具創(chuàng)作...
    戴建華油畫閱讀 329評(píng)論 0 0