ssh框架入門

ssh(struts+spring+hibernate)究竟是怎麼一回事?是一種規範。

先別管規範,我們從最基本的概念去理解它。java是對面向對象的編程語言,java裏一切只有類,java項目的本質就是執行類的方法,類與類之間的調用。利用的其它資源就是文件,主要是xml配置文件,另外就是數據庫。

jsp文件實質也是一種java類,它將被編譯成Servlet類文件。jsp是爲了簡化用戶編寫繁雜的Servlet類文件而設置的。web容器(也是一堆java類)負責把jsp文件轉化成Servlet類文件。

爲了完成一個任務,實現一個功能,需要寫許多java類,根據java類的作用不同,可以把java類分成幾種,有些負責頁面展示,有些負責業務處理邏輯運算,有些負責訪問數據庫。當然,你也可以把這些功能寫在一個類裏實現(呵呵,這在理論上是能實現的!),不過人們爲了代碼更加清晰,往往一個大功能分成許多小功能,由多個類去實現。

上面的話大家應該不難理解,即爲了完成一個大功能,要由許多類,分別完成相應專門功能。可這和框架似乎無關,框架又是怎麼回事呢?所謂框架就是“由許多類,分別完成相應專門功能”的具體規範,這在多人合作開發一個大項目時尤爲必要。大家試想,如果項目組成員各行其是,自己想用哪幾種類實現功能就用哪幾種類,會是一個什麼樣子,有多混亂!因此框架的定義就是:爲了完成一個整體功能,對實現這個功能的java類的一種分工規範。(準確說,這是一種人爲的規範劃分,任何人都可編寫自己的任意規範,就是一個會有多少人會用的問題了)

struts+spring+hibernate就是這樣一種規範

struts是顯示層的一種規範,側重於處理“給用戶顯示的前臺頁面”和後臺業務處理類之間的對應關係,並且負責前後臺之間的數據傳遞。它由三種java類組件jsp、Form、Action分別實現前臺頁面展示、後臺業務處理類、數據傳遞類。(所謂組件,就是對一種專門實現某種功能的java類的稱呼)

spring是業務層的一種規範,側重於定義事務處理,提供了對各種java類的整體處理(主要包括注入處理IoC和切面編程AOP),甚至提供了對多種框架集成在一塊的規範,它是一種更高層次的框架,它主要以一個外部 XML 配置文件方便地將各框架對象連接在一起,進而實現安全性服務、事務服務等。

這裏大家可能有一個疑問,spring是如何以一個外部 XML 配置文件實現的各種功能呢?這其實沒有任何神祕而言,我們大家都知道,每個框架都有許多類包,這些類包就是專門實現這些事情的。這些類包是如何介入我們寫的類代碼或其它框架的呢?當然必須通過一定途徑才能調用其它類代碼,有時spring把這個細節隱藏了起來,使我們感到不可思議,細究一下,我們會發現不外通過兩種方式才能調用其它類代碼:一是把我們的類寫在它的配置文件裏,二是我們的類繼承它的接口。

hibernate是一個純 Java 的對象關係映射和持久性框架,它允許您用 XML 配置文件把普通 Java 對象映射到關係數據庫表,從而可以使用戶以hibernate提供的面向對象的接口輕鬆操作數據庫。hibernate的類包在後臺還是以JDBC的方式操作數據庫。

三種技術到目前已經比較成熟,而且他們都是免費的!讓我們對三者集成,與大家一起輕鬆、深入地進入ssh天地
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章