實習期間使用spring mvc & spring & hibernate 做了乙個簡單的內容管理**。淺嘗輒止,談不上什麼經驗。把自己不成熟的想法寫下來,歡迎拍磚。
spring入門最先接觸的的是spring的配置檔案了。
其實想法很簡單,就是要告訴spring怎麼裝配好乙個物件,也就是spring中所說的bean,當其它物件需要這個bean的時候,就可以問spring要了。
spring配置乙個bean的形式大體如下:
<上面的意思是要spring裝配乙個叫 newsservice 和乙個叫 newsdao 的bean。嚴格來說,spring將會分別裝配類newsdaoimlp 和 newsserviceimlp 的乙個單例。bean
id= "newsservice"
class
="com.hs.fw.service.newsserviceimlp"
>
<
property
name
="newsdao"
ref="newsdao"
>
property
>
bean
>
<
bean
id="newsdao"
class
="com.hs.fw.dao.hibernate.newsdaoimlp"
>
bean
>
上面的意思是:類 newsserviceimlp 會有乙個方法:setnewsdao,該方法接受乙個引數。該引數從和而來呢?其實就是那個叫newsdao的物件。這個過程叫注入依賴。
當然上面的只是spring配置功能的冰山一角,實際上你可以使用建構函式或工廠方法注入依賴,給bean傳入各種引數,包括基本數字、字串、列表、對映等等,還可以控制bean的作用域。具體如何配置就不談了,這個並不重要,只是乙個表達形式而已。
spring這樣做的原因是什麼呢?為了管理類之間的依賴管理,為了解開類之間的耦合。把耦合從**中去掉,取而代之以配置檔案的方式來管理。
物件導向設計中很重要的乙個原則就是低耦合。乙個高耦合的系統是很難維護的,當修改了乙個類,其它依賴以此類的類將會受到影響,這帶來的連鎖反應將會令**無法修改。
下面我們來看下類圖:
可以看到,usermanagerimlp類需要依賴和資料訪問層,但是它依賴的是資料訪問層的介面。而具體的實現將會由spring來負責找到,並告訴usermanagerimlp類的例項。至於spring去找這個介面的實現,這就依靠上面提到的配置檔案了。
這樣做的好處是什麼呢?a.我們可以輕易的修改dao層的具體實現,只要正確的實現了介面,不用擔心其他模組會受到影響。我們可以選擇不同的實現技術,同時為不同資料庫提供各自的實現版本,使用不同的關係資料物件對映工具,甚至使用文字檔案。可以隨時在不同的實現之間切換,只需要修改配置檔案就可以了。
那我們是否應該把spring反轉控制引入我們的設計呢?具體問題具體分析。可以看到,上面的設計引入了很多介面,很多額外的工作。如果只是是乙個練習的小專案,大可隨意選擇,最重要的是你是動手去做了,花太多時間在不同框架中權衡可不好。
spring mvc是基於servlet的。下面看下spring mvc的處理流程:
處理流程解析:
(1)
前端控制器:接受來自http請求,根據請求引數選擇對應的控制器,並把控制器返回的資料傳遞至檢視模板引擎。該前端控制器使用的實現是spring
mvc框架的dispatcherservlet。
(2)
控制器:按功能劃分為多個controller,接受使用者資源請求、提交請求,呼叫業務邏輯層完成功能,給前端控制器返回實體資料。本系統的控制器實現spring
mvc框架的org.springframework.web.servlet.mvc.controller介面。
(3)
業務邏輯:處理業務邏輯。
(4) 資料訪問層:完成持久化物件與資料庫之間的轉換。
(5)
模板引擎:接受來自前端控制器的請求,把檢視資料和模型資料轉化成html,並返回給前端控制器。
Linux作業系統淺嘗輒止
作業系統 os 是當今最複雜的系統軟體之一,它幾乎是所有複雜應用軟體的基礎。作業系統本質上是一組程式,他管理和控制其他程式的執行,並充當應用程式和計算機硬體之間的介面。作業系統相當於乙個管理者。它的出現是為了使計算機更好的使用。馮諾依曼體系結構 我們常見的計算機 伺服器都遵循著馮諾依曼體系結構。前邊...
淺嘗輒止 程式設計師的悲哀
我發現有一些這樣的人,從別人的地方把 拷貝過來,但是究竟有多明白不清楚,反正搞來搞去程式是調通了,貌似還執行的很好,但是問他程式裡的細節,搖頭不知道,框架為什麼要這麼配置?這樣配置有什麼作用?去除這個配置會發生什麼問題?搖頭,不知道。如果技術搞成這樣,我認為就是乙個悲哀,對個人生活就是個悲哀,對個人...
淺嘗輒止 數學建模(筆記 典型相關分析)
4.2 對典型相關係數的檢驗假設 確定典型變數數量 5.如何判斷綜合變數是否具有的代表性?二 運用spss計算相關資料 三 典型相關分析應用中的幾個問題 五 他山之石 典型相關分析是研究兩組變數 每組變數中都可能有多個指標 之間相關關係的一種多元統計方法。它能夠揭示出兩組變數之間的內在聯絡。在每組變...