1. 程式人生 > >SSH框架簡單介紹

SSH框架簡單介紹

SSH框架簡單介紹

       J2EE是一套全然不同於傳統應用開發的技術架構,包含許多元件,主要可簡化且規範應用系統的開發與部署,進而提高可移植性、安全與再用價值。 其核心是一組技術規範與指南,其中所包含的各類元件、服務架構及技術層次,均有共同的標準及規格,讓各種依循J2EE架構的不同平臺之間,存在良好的相容性, 解決過去企業後端使用的資訊產品彼此之間無法相容,企業內部或外部難以互通的窘境。J2EE元件和“標準的” Java類的不同點在於:它被裝配在一個J2EE應用中,具有固定的格式並遵守J2EE規範,由J2EE伺服器對其進行管理。 ★J2EE規範是這樣定義J2EE元件的:客戶端應用程式和applet是執行在客戶端的元件;Java Servlet和Java Server Pages (JSP) 是執行在伺服器端的Web元件;Enterprise Java Bean (EJB )元件是執行在伺服器端的業務元件 J2EE常用三大框架,分別是Struts,Spring,Hibernate;這三大框架組合,可以進行一些輕量級系統和相關web應用的開發;

         ※Struts:它通過採用JavaServlet/JSP技術,實現了基於JavaEE Web應用的MVC設計模式的應用框架,是MVC經典設計模式中的一個經典產品;隨著時間的推移,也完成從struts1到struts2的轉變,Struts2是Struts的下一代產品,是在 struts1和WebWork的技術基礎上進行了合併的全新的Struts2框架。其全新的Struts2的體系結構與Struts1的體系結構差別巨大;Struts2以WebWork為核心,採用攔截器的機制來處理使用者的請求,這樣的設計也使得業務邏輯控制器能夠與ServletAPI完全脫離開,所以Struts2可以理解為WebWork的更新產品;雖然從Struts1到Struts2有著太大的變化,但是相對於WebWork,Struts2的變化很小;主要實現了層的功能。

※Spring:這是一個開放原始碼的設計層面框架,他解決的是業務邏輯層和其他各層的鬆耦合問題,因此它將面向介面的程式設計思想貫穿整個系統應用。Spring是於2003 年興起的一個輕量級的Java 開發框架,由Rod Johnson建立。簡單來說,Spring是一個分層的JavaSE/EEfull-stack(一站式) 輕量級開源框架。通過運用其特有的IOC(依賴注入)和AOC(面向切面)的功能來達到實現系統內低耦合高內聚的作用。

       ※Hibernate:作為一個開放原始碼的物件關係對映框架,它對JDBC進行了非常輕量級的物件封裝,它將POJO與資料庫表建立對映關係,是一個全自動的orm框架,hibernate可以自動生成SQL語句,自動執行,使得Java程式設計師可以隨心所欲的使用物件程式設計思維來操縱資料庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程式使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成資料持久化的重任。實現與底層資料庫的互動和是資料持久化到資料庫。

        ★MVC:mvc框架中,M代表Model,是模型的意思;V即View.是檢視的意思;C則代表Controler,是控制器的意思。

        ※M,即Model,在Java Web裡說的是JavaBean,可能有很多人都把JavaBean誤認為是實體類,其實JavaBean有比實體類更豐富的定義,在JavaBean中除了其屬性和欄位,還可以有行為及其事件,JavaBean可以理解為普通Java物件。Java普通物件,就是符合Java規範的所有物件,這和實體類完全是兩回事。所以,我認為在MVC中。業務邏輯和資料訪問應該放在Model層

        ※V負責展示資料,作為檢視,是直接展示給使用者看的;

        ※Controller是控制器的意思,所謂控制器,就是將使用者請求轉發給模型層,經過處理後把結果返回到介面展現的一箇中間層,那麼Controler到底管什麼工作呢?先不說.先來看下在Java Web中這三個層一般的定義,一般在Java Web裡,JSP充當V,Servlet充當C,JavaBean充當M,這裡的Servlet管什麼工作呢?接受輸入,轉到Model層去處理,處理結果儲存後轉發到JSP,然後展現資料。所以它的功能就是控制器的基本功能,它就管轉發,在V和M之間轉來轉去。

ps:部分定義內容參考百度百科;

---------------------------------------------------------------------------------------------------

轉載自https://www.cnblogs.com/LYH547923175/p/7554708.html(侵刪)

-------------------------------------------------------------------------------------------------