1、Springphp
Spring是一個解決了許多在J2EE開發中常見的問題的強大框架。 Spring提供了管理業務對象的一致方法而且鼓勵了注入對接口編程而不是對類編程的良好習慣。html
Spring的架構基礎是基於使用JavaBean屬性的Inversion of Control容器。然而,這僅僅是完整圖景中的一部分:Spring在使用IoC容器做爲構建完關注全部架構層的完整解決方案方面是獨一無二的。java
Spring提供了惟一的數據訪問抽象,包括簡單和有效率的JDBC框架,極大的改進了效率而且減小了可能的錯誤。程序員
Spring的數據訪問架構還集成了Hibernate和其餘O/R mapping解決方案。web
Spring還提供了惟一的事務管理抽象,它可以在各類底層事務管理技術,例如JTA或者JDBC事務提供一個一致的編程模型。spring
Spring提供了一個用標準Java語言編寫的AOP框架,它給POJOs提供了聲明式的事務管理和其餘企業事務--若是你須要--還能實現你本身的aspects。數據庫
這個框架足夠強大,使得應用程序可以拋開EJB的複雜性,同時享受着和傳統EJB相關的關鍵服務。Spring還提供了能夠和IoC容器集成的強大而靈活的MVC Web框架。編程
2、structs瀏覽器
Struts是一個基於Sun J2EE平臺的MVC框架,主要是採用Servlet和JSP技術來實現的。安全
因爲Struts能充分知足應用開發的需求,簡單易用,敏捷迅速,在過去的一年中頗受關注。
Struts把Servlet、JSP、自定義標籤和信息資源(message resources)整合到一個統一的框架中,開發人員利用其進行開發時不用再本身編碼實現全套MVC模式,極大的節省了時間,因此說Struts是一個很是不錯的應用框架。
3、Hibernate
Hibernate是一個開放源代碼的對象關係映射框架,它對JDBC進行了很是輕量級的對象封裝,使得Java程序員能夠爲所欲爲的使用對象編程思惟來操縱數據庫。 Hibernate能夠應用在任何使用JDBC的場合,既能夠在Java的客戶端程序實用,也能夠在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate能夠在應用EJB的J2EE架構中取代CMP,完成數據持久化的重任。fdHibernate能夠在應用EJB的J2EE架構中取代CMP,完成數據持久化的重任。映射很簡單呀,就是頁面的映射呀,多作點練習就會了,
JAVA三大框架用來作WEN應用。 struts主要負責表示層的顯示 spring利用它的IOC和AOP來處理控制業務(負責對數據庫的操做) hibernate主要是數據的持久化到數據庫 在用jsp的servlet作網頁開發的時候有個web.xml的映射文件,裏面有個mapping的標籤就是用來作文件映射的。 當你在瀏覽器上輸入URL地址的時候,文件就會根據你寫的名稱對應到一個java文件,根據java文件裏編寫的內容顯示在瀏覽器上,就是一個網頁,因此網頁名字是隨便寫的,隨便起的名字,無論你起的是.php .jsp .do仍是其餘的什麼都對應這個java文件,這個java文件裏的代碼進行什麼操做就幹什麼,顯示一句話仍是鏈接數據庫仍是跳轉到其餘頁面等等,這個java文件把數據進行封裝起到安全和便於管理的做用。其實這個java文件編譯過來是.class的一個字節碼文件,沒有那麼一個相似html嵌入標籤和代碼的網頁文件。他與jsp文件區別就是jsp把代碼嵌入到html標籤中。 還有servlet或者struts中html表單的action中的提交名稱對應一個java文件,struts通常是.do的,都和上面同樣是映射。
今天導師又來找談話,問項目作得怎麼樣了。這個月事情真的不少,以前研究生的啦啦操比賽,後來還有那麼多課要結,全都要寫做業。因此這個月根本就沒動手。還有一個更重要的緣由是,這項目作得實在無趣,沒一個拿得出手的技術,全用的最簡單的語句,這樣一個代碼怎麼拿得出手,因此在學三大框架,但是跟老師一聊,發現學得確實有些茫目,因此上網查一下本身所學的東西究竟是作什麼的,能不能對本身的項目有所突破。
原文: http://christhb.blog.163.com/blog/static/98982492011727114936239/
-----------------------------------------------------------------------------------------------
Struts 在項目主要起控制做用,只要用於web層(即視圖層和控制層)
Struts自己是使用典型的MVC結構實現的,項目中使用了struts以後就等於項目也是一個MVC結構,使項目結構更清晰,分工更明細。
Struts在項目中主要負責視圖層、控制層,在視圖層提供了大量的標籤庫,提升視圖層的開發速度。在控制層使用中央控制器(Actionsupport)和配置文件(struts.xml),實現攔截用戶請求、封裝請求參數及頁面導航。
Spring是一個全方位的整合框架,在項目中對hibernate和struts進行整合,解決層與層之間的耦合問題。
Spring的做用貫穿了整個中間層,將Web層、Service層、DAO層及PO無縫整合。
Spring的IoC來實現組件之間的依賴關係注入,上層框架不會滲透到下層組件,提升組件移植性和重用性,使得程序更靈活,上層框架不依賴實現而是依賴於抽象(委託接口)、使得實現類的變化不會影響上層組件,解決了層與層之間的藕合帶來的維護或升級困難
SpringAOP 是面向方面編程,實現事務處理、日誌服務等與業務無關的系統服務,實現插件式編程。
Hibernate應用於數據持久化層,是對JDBC的輕量級封裝。是一種對象、關係的映射工具, 提供了從 Java類到數據表的映射,也提供了數據查詢和恢復等機制, 大大減小數據訪問的複雜度。把對數據庫的直接操做 , 轉換爲對持久對象的操做。在項目中的主要做用就是一、解決程序與數據庫的依賴,即便用了Hibernate以後,之後更改數據庫不須要更改代碼,由於Hibernate會根據數據庫方言來生成對應的SQL語句;二、是對JDBC的輕量級封裝,簡化持久層的代碼,提升開發速度。