freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

外文翻譯---一種基于hibernate、struts和spring的j2ee應(yīng)用開發(fā)框架-其他專業(yè)(已修改)

2025-02-04 09:17 本頁面
 

【正文】 一種基于 Hibernate、 Struts 和 Spring 的 J2EE 應(yīng)用開發(fā) 框架 隨著 Java技術(shù)的逐漸成熟與完善 ,作為建立企業(yè)級應(yīng)用的標(biāo)準(zhǔn)平臺 ,J2EE平臺得到了長足的發(fā)展 。 借助于 J2EE規(guī)范中包含的多項技術(shù): Enterprise JavaBean(EJB)、 Java Servlets(Servlet)、 Java Server Pages(JSP)、 Java Message Service(JMS)等,開發(fā)出了許多應(yīng)用系統(tǒng)。但是,在傳統(tǒng) J2EE應(yīng)用的開發(fā)過程中也出現(xiàn)了一些問題: (1)數(shù)據(jù)模型和邏輯模型之間的 矛盾。目前使用的數(shù)據(jù)庫基本上都是關(guān)系型數(shù)據(jù)庫,而 Java本質(zhì)上是一種面向?qū)ο蟮恼Z言,對象在存儲和讀取時使用 SQL和JDBC進行數(shù)據(jù)庫操作,降低了編程的效率以及系統(tǒng)的可維護性; (2)傳統(tǒng)的 J2EE應(yīng)用多采用基于 EJB的重量級框架,這種框架適合于開發(fā)大型企業(yè)應(yīng)用,但是使用 EJB容器進行開發(fā)和調(diào)試需要耗費大量時間。為了降低代碼的耦合性,提高系統(tǒng)的開發(fā)效率,本文提出了一種基于 Struts框架、 Hibernate框架 和 Spring框架 的 J2EE應(yīng)用開發(fā)策略。 Hibernate 框架 Hibernate是一個數(shù)據(jù)持 久層框架,是一種實現(xiàn)對象和關(guān)系之間映射( O/R Mapping)的工具,它對 JDBC進行了輕量級的對象封裝,使程序員可以使用對象編程思想來操作數(shù)據(jù)庫。它不僅提供了從 Java類到數(shù)據(jù)表的映射,也提供了數(shù)據(jù)查詢和恢復(fù)機制。相對于使用 JDBC和 SQL來操作數(shù)據(jù)庫,使用 Hibernate能大大的提高實現(xiàn)的效率。 Hibernate框架用配置文件的形式來定義 Java對象和數(shù)據(jù)表之間的映射關(guān)系,同時在更深的層面將數(shù)據(jù)表之間的關(guān)系解釋為 Java對象之間的繼承及包含等關(guān)系。通過使用 HQL語句將復(fù)雜的關(guān)系算法用對象的方式描述, 在很大程度上簡化了對數(shù)據(jù)的查詢,加快了開發(fā)的效率。在 Hibernate中有一個簡單而直觀的 API,用于對數(shù)據(jù)庫所表示的對象執(zhí)行查詢。要創(chuàng)建或修改這些對象,只需在程序中與它們進行交互,然后告訴 Hibernate保存即可。這樣,大量封裝持久化操作的業(yè)務(wù)邏輯不再需要編寫煩瑣的 JDBC語句,從而使數(shù)據(jù)持久層得到了極大的簡化。 用 Struts實現(xiàn) MVC架構(gòu) MVC( ModelViewController)由 Trygve Reenskaug提出,首先被應(yīng)用在 SmallTalk80環(huán)境中 , 是許多交互和界面系統(tǒng)的構(gòu) 成基礎(chǔ)。根據(jù)界面設(shè)計可變性的需求, MVC把交互系統(tǒng)的組成分解成模型、視圖、控制器三部分。 模型( Model)是軟件所處理問題邏輯在獨立于外在顯示內(nèi)容和形式情況下的內(nèi)在抽象,封裝了問題的核心數(shù)據(jù)、邏輯和功能的計算關(guān)系,獨立于具體的界面表達和 I/O操作。視圖( View)把表示模型數(shù)據(jù)及邏輯關(guān)系和狀態(tài)的信息及特定形式展示給用戶。它從模型獲得顯示信息,對于相同的信息可以有多個不同的顯示形式或視圖??刂破鳎?Controller)是處理用戶與軟件的交互操作的,其職責(zé)是控制提供模型中任何變化的傳播,確保用戶界面于模型間的對 應(yīng)聯(lián)系;它接受用戶的輸入,將輸入反饋給模型,進而實現(xiàn)對模型的計算控制,是使模型和視圖協(xié)調(diào)工作的部件。通常一個視圖對應(yīng)一個控制器。模型、視圖與控制器的分離,使得一個模型可以具有多個顯示視圖。如果用戶通過某個視圖的控制器改變了模型的數(shù)據(jù),所有其它依賴于這些數(shù)據(jù)的視圖都應(yīng)反映到這些變化。因此,無論何時發(fā)生了何種數(shù)據(jù)變化,控制器都會將變化通知所有的視圖,導(dǎo)致顯示的更新。這實際上是一種模型的變化 傳播機制。 Struts框架 Struts框架最早是作為 Apache Jakarta項目的組成部分問世運做,它繼承了MVC的各項特性,并根據(jù) J2EE的特點,做了相應(yīng)的變化與擴展。 Struts框架很好的結(jié)合了 Jsp, Java Servlet, Java Bean, Taglib等技術(shù)。在 Struts中,承擔(dān) MVC中控制器角色的是 ActionServlet。 ActionServlet是一個通用的控制組件。這個控制組件提供了處理所有發(fā)送到 Struts的 HTTP請求的入口點 , 它截取和分發(fā)這些請求到相應(yīng)的動作類(這些動作類都是 Action類的子類)。另外控制組件也負(fù)責(zé)用相應(yīng)的請求參數(shù)填充 Action Form( FromBean),并傳給動 作類( ActionBean)。動作類訪問核心商業(yè)邏輯,即訪問 Java Bean或調(diào)用 EJB。最后動作類把控制權(quán)傳給后續(xù)的 JSP文件,由 JSP文件生成視圖。所有這些控制邏輯利用。在 Struts框架中,視圖主要由 JSP生成頁面完成,Struts提供豐富的 JSP標(biāo)簽庫,這有利于分開表現(xiàn)邏輯和程序邏輯。模型以一個或多個 Java Bean的形式存在。在 Struts中,主要存在三種 Bean,分別是: Action,ActionForm, EJB或者 Java Bean。 Struts框架沒有具體定義模型層的實現(xiàn),在實際開發(fā)中,模型層通常是和業(yè)務(wù)邏輯緊密相連的,并且要對底層數(shù)據(jù)進行操作。下面介紹一種開發(fā)策略,將 Hibernate引入到 Struts框架的模型層中,使用它來進行數(shù)據(jù)封裝和映射,提供持久化的支持。 Spring 框架 Spring 明顯區(qū)別于其他輕量級 application framework, 它將專注于 web的支持,與 struts 和 webwork 有著明顯的區(qū)別。 在 與 struts、 webwork 的對比上 ,Spring 是一個服務(wù)于所有層面的application framework:提供了 bean 的配置基礎(chǔ), AOP 的支持 , JDBC 的提取框架,抽象事務(wù)支持等等。它有一個非常顯著的特點:在某個層面上如果你不需要Spring 的支持,你就可以不使用 Spring 的 class,只使用它的某一部分的功能。 從它的設(shè)計理念,你可以看到 Spring 幫助你實現(xiàn)了真正的邏輯層和 web 層的分離 。 例如 : 一個校驗應(yīng)用將不用依靠 controllers 就可以實現(xiàn)。這樣的目標(biāo)更好的重用和易測 ,過分依靠不必要的容器和框架將不能實現(xiàn)這一點。 當(dāng)然 ,Spring 有 自己的 web 支持和通??蚣苣J?細致完整 。 然而 , Spring替換 struts、 webwork 或者其他的 web 方案非常容易 。 對于 Spring 的 web 支持或者不同的地方, Spring 允許你在 web 容器里面建立一個中間層,在測試環(huán)境或者標(biāo)準(zhǔn)獨立的應(yīng)用里面來設(shè)置重用你的商務(wù)邏輯 .還有在 J2EE 環(huán)境里面,你的商務(wù)邏輯不必依靠容器提供的服務(wù),像 JTA ,EJB 的支持 。 良好的構(gòu)架的 web 應(yīng)用可以運行在任何容器上,如, Tomcat 或者 Resin。 值得注意的是, Spring 不是和已經(jīng)存在的解決方案進行競爭 . 我們鼓勵結(jié)合標(biāo)準(zhǔn)的技術(shù),如, Servlet,JSP, JTA,JNDI,JDBCand JDO 和非常匹配的工具,如, Hibernate, Velocity, Log4J, and Caucho39。s Hessian/Burlap。 這個框架的的設(shè)計思想是在你的應(yīng)用需要改良的時候,你將會做一些技術(shù)的選擇 , 例如 ,如果你需要分布式事務(wù)處理,你可能需要用 Spring 的 Jta TransactionManager 來實現(xiàn) JTA 服務(wù) 。 或 者 用 DataSource TransactionManager or HibernateTransactionManager 來實現(xiàn)的單個數(shù)據(jù) 庫交換。 Spring 框架通過配置操作 mappings,展示 resolution,本地化和模版集成圍繞著分派請求操作的 servletDispatcherServlet 設(shè)計的 。 缺省的操作是一個非常簡單的控制接口 , 他只提供了 ModelAndView handleRequest (request, response)方法 。 這將用于一個應(yīng)用的控制 ,但是 ,如果你想包含多個層次的控制,AbstractController,AbstractCommandController, MultiActionController,SimpleFormController,AbstractWizardFormController 將幫助你完成 .應(yīng)用控制將代表那些子系統(tǒng) 。 注意,你可以選擇一個適當(dāng)?shù)幕?:如果你沒有 web form,你就不必用 FormController, 這就是和 Struts 最大的不同 。 你可以通過命令或者 form 對象來操作任何對象 , 這不需要接口工具或者一個基礎(chǔ)類的驅(qū)動 。 Spring 的數(shù)據(jù) 綁 定非常 靈活 。 舉例來說 ,它描述了具有在應(yīng)用范圍內(nèi)的校驗錯誤的輸入機制 ,但不是系統(tǒng)錯誤 , 所以在你的 form 對象里面你不必復(fù)制你的業(yè)務(wù)對象 的 spring 屬性 ,只操作出錯的子任務(wù) ,或者適當(dāng)?shù)剞D(zhuǎn)換spring。 換句話說 ,它通??梢院芎玫闹苯?綁 定你的業(yè)務(wù)對象 。 這也是和 struts圍繞請求基礎(chǔ)類 Action 和 ActionForm (每個 action 操作類型 ) 建立主要的不同之一 。 對比 WebWork,Sping 更多的區(qū)別在于對象角色 :Spring 支持控制器的感念 ,一個操作命令或者 form 對象和得到數(shù)據(jù)傳遞給視圖的模式 , 這個模式通常包含命令和 form 對象 ,但有時也包含任意的參考數(shù)據(jù) 。 換句話說 ,一個 WebWork Action 聯(lián)合所有這些角色到一個單 獨的對象 。 WebWork 允許你用已經(jīng)存在的業(yè)務(wù)對象作為你 form 的一部分 ,但是只生成各自 Action 的 bean 屬性 。 最后 ,操作請求的 Action 實例在一個視圖里面獲得付值和 form population。 然而 ,參考數(shù)據(jù)也需要作為 Action 的屬性被模擬 。 關(guān)于視圖 :Spring 的視圖方案非常的靈活 。 一個控制器執(zhí)行可以通過res
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1