1.3 我的第一個Spring項目(手把手教你創(chuàng)建一個簡單的Spring項目)
本篇文章主要介紹的是一個使用Spring框架搭建的一個簡單項目。大家可以先熟悉一下Spring項目的創(chuàng)建步驟,之后我會按照此步驟創(chuàng)建我們所需的項目。

1、依賴導入
??? 首先我們根據(jù)1.2節(jié)介紹的步驟創(chuàng)建一個Maven項目,之后,我們再pom.xml中引入如下依賴:
2、創(chuàng)建實體類Student
2、創(chuàng)建配置文件applicationContext.xml
聲明Bean對象、為私有屬性賦值。
??? 這里配置文件標簽的作用我們會在以后的Bean管理中給大家分享,由于是入門程序,就不為大家增加負擔了。
3、創(chuàng)建測試類StudentTest
4、運行測試類:
顯示show方法中定義的語句即可說明Spring項目創(chuàng)建成功。


5、Spring框架的作用及其優(yōu)點
??? 講了這么多,大家可能有不少疑惑。畢竟從這個系列的專欄上線以來,大家都不知道Spring到底有什么用,畢竟對象我也可以自己創(chuàng)建實體類,自己去new,那我們?yōu)槭裁催€要費勁的配置Spring的相關事宜呢?
??? 其實從上面的實例我們就可以看得出來,我們如果一個項目創(chuàng)建了多個實體類,那么使用的時候我們需要一個一個的new出來,這樣會顯得代碼非常凌亂,冗余。Spring就是一個大工廠,可以把所有對象的創(chuàng)建和依賴關系的維護交給Spring管理。這樣就達到了解耦合的目的,便于后期維護。同時Spring還支持面向切面的編程(AOP),可以方便的實現(xiàn)對程序進行權限攔截、運行監(jiān)控等功能。諸如此類,Spring框架還支持聲明式事務支持、便于程序測試的Junit4支持(可以通過注解測試Spring程序)。
6、控制反轉(自己的理解)
??? 所謂控制,就是對代碼控制權的歸屬問題。大家還記得我們在初學Java的時候調用某個方法是怎樣做的嗎?
那么我們使用了Spring框架之后又是如何調用方法的呢?
??? 注意看每次的實例化對象都是誰創(chuàng)建的,第一次的控制權在我們手中,我們想new一個對象就new一個對象。但是第二次的話我們需要從Spring容器獲取實例化對象,不能自己創(chuàng)建了,控制權交給了Spring,這就是控制(權)反轉。
7、依賴注入(自己的理解)
??? 所謂依賴注入,其實就是兩個字:賦值。其實他和我們原來學的Java中的set方法作用是一樣的。
??? 在applicationContext.xml中,我們?yōu)镾tudents實體類賦值就是依賴注入。實體類依賴的屬性的值我們給他指定,就相當于注入了依賴。
8、Spring的缺點
??? 那么,Spring有沒有缺點呢?當然,就像人一樣,沒有完美的人。Spring框架中我認為比較重要的一個就是他的依賴反射,反射是對項目性能占用較大的,對于一些重大項目,Spring這種輕量型框架不是一個很好的選擇。其實還有一點,就是咱們引以為傲的Spring的代碼配置化功能(這個會在注解實現(xiàn)某個功能的時候表現(xiàn)得尤為突出),因為按照原來的邏輯,程序都是由代碼組成的,但是現(xiàn)在卻變成了配置文件或者基于注解實現(xiàn)某項功能,在方便開發(fā)的同時,也為后期維護造成了 一些問題難以發(fā)現(xiàn)的現(xiàn)象。

以上就是本篇文章的全部內容,如果有我對概念理解有偏差的,歡迎評論留言。
關注我,一起學Spring,一起進步。