SSH Spring入門必讀

2021-06-27 10:20:32 字數 1766 閱讀 1067

j2ee的課程接近尾聲,今天老師開始講了ssh框架中傳說中的spring,在介紹這個spring之前,先來對之前的知識進行乙個系統的總結。

首先,ssh框架必懂的struct2,在struct裡面,我們只要是學習如何使用***把介面的值利用getmodel()等方法來傳遞給action裡面需要用到的屬性值,這樣做的乙個好處,就是避免了之前一直需要使用request.getparament的方法來獲取前台介面上的值,其實說白了就是lazy啊有木有~

其次,我們學習了jpa和hibernate的方法來對資料庫進行操作,hibernate的出現簡化了我們的**,可以使我們少作很多事情,至少不需要像傳統的那種一直需要寫sql語句。

學習了struct2和hibernate的同時,我們還在學習物件導向分析與設計這門課程,重在設計,j2ee這是用技術把設計的思想來表達出來(我去,說這些幹啥,跟spring有毛線關係,好吧,別急,慢慢看去)。截止到這裡,我們如果要開發乙個專案的話,這個**專案的整體的體系結構應該是怎麼樣的呢?

就在課堂上的討論,以及看各種大牛的文件,我們可以看到,整個專案的包分為以下四層:

view-----------------struct 2來做這一塊;

service-------------呼叫下面的dao的**;但是不要採用「麵條式」的方法來做,service一般不需要太多,可以把

許多方法在乙個service裡面,具體的可以按照用例或者功能模組來分。service劃分的好壞,

直接影響到了你元件圖是否能畫的出來。

dao----------------hibernate的框架來實現,而且dao層基本沒什麼自己的屬性;

model--------------這個model層的話在,主要就是一些實體類以及一些公用的類。

這樣看起來,整個的專案非常的perfect的,可素可素說好的ssh框架呢??spring身在何處??還有必要要spring嗎?要spring能幫助我們做些什麼?

那麼,問題來了………………

在上面的體系架架構中,我們會發現在service裡面呼叫dao的方法,意味著我們需要new很多個dao的物件,而spring正是來幫助我們解決這樣的問題的。這裡就需要提到一些概念:inversion control(反向控制) 或者是dependency injection(依賴注入,spring的依賴注入詳解請看這個大神的**:

也就是說我們用spring框架在,只要在配置檔案中注入,這個物件就會存在了。這種方法其實跟struct 2的***的做法是一樣的,不過這種思想的的確確是spring先提出來的。

spring的主要內容如下:

這裡我接觸到的主要是spring dao,其機制其實是利用jdbc的方法,需要些一大堆的sql語句,這一點我們還是使用hibernate吧。spring的mvc的框架,實際上,spring的mvc的v層其實是相當與做了struct 2所做的事情,兩者沒什麼差別,有空可以去學習一下。

說了蠻多的,可素好像還是不太清楚到底是如何在專案中使用spring的呢?

一、新增所需要的spring包;

二、在web.xml檔案裡面新增如下配置:

org.springframework.web.context.contextloaderlistener 

使用jsf的時候,需要用servlet來配置;使用struct 2的時候需要用filter來配置,所以spring只能用listener了、

必須要告訴apache我使用了說明框架,所以需要寫配置檔案。

三、在spring的配置檔案中寫自己的dependency injection吧。這個看上面寫的連線就好了。

需要了解的一些小知識:

SSH Spring控制反轉

一 spring核心 1 ioc控制反轉 ioc inversion of control 本來是由應用程式管理的物件之間的依賴關係,現在交給了容器管理,這就叫控制反轉,即交給了ioc容器,spring的ioc容器主要使用di方式實現的。不需要主動查詢,物件的查詢 定位和建立全部由容器管理。簡單的舉...

shell指令碼初入門必讀

引用於網路 引言 當你開始接觸linux的時候,當你用命令列實現一鍵功能的時候,心裡一陣暗爽。暗爽過後便是想去了解,什麼幫助我們實現這樣的自動化的。這個時候你一定就了解到shell指令碼語言了。對於乙個出入shell指令碼世界的小白是我來說,迫不及待的學習shell相關語法起來。這個時候自己按照網上...

php程式設計師入門必讀

1.概要 學習任何語言都需要多看 多想 多寫 多問!寫程式設計是一種熟能生巧的東西!學習php也一樣,因為知識就那麼多,你看多了就會覺得怎麼都一樣。程式設計師就是炒冷飯的,一遍又一遍。多敲幾遍就可以閉著眼睛寫了,所以企業招聘都會問你寫過多少行 的!程式設計師最忌諱浮躁,有時候發現一段程式完全找不出錯...