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

正文內容

計算機專業(yè)畢業(yè)論文外文翻譯--struts——mvc的一種開放源碼實現(xiàn)-閱讀頁

2025-06-05 17:40本頁面
  

【正文】 es at it, Struts might have these features by the time you read this article, or soon after. Future of Struts Things change rapidly in this new age of software development. In less than 5 years, I have seen things go from cgi/perl, to ISAPI/NSAPI, to ASP with VB, and now Java and J2EE. Sun is working hard to adapt changes to the JSP/servlet architecture, just as they have in the past with the Java language and API. You can obtain drafts of the new JSP and Servlet specifications from the Sun Web site. Additionally, a standard tag library for JSP files is appearing. 附錄 B 外文譯文 (譯自: Malcolm Davis. Strutsan opensource MVC implementation [J]. IBM Systems Journal , 2020,44(2):3337.) Struts—— MVC 的一種開放源碼實現(xiàn) Malcolm Davis 本文介紹 Struts,它是使用 servlet 和 JavaServer Pages 技術的一種 ModelViewController 實現(xiàn)。盡管您可能永遠不會用 Struts 實現(xiàn)一個系統(tǒng),但您可以將其中的一些思想用于您以后的 servlet 和 JSP 網(wǎng)頁的實現(xiàn)中。但是,小學生的網(wǎng)頁和專業(yè)開發(fā)的網(wǎng)站有質的區(qū)別。設計漂亮的網(wǎng)站需要做大量的工作,大多數(shù) Java 開發(fā)人員更注重創(chuàng)建優(yōu)美的對象接口,而不是用戶界面。 如果您開發(fā)過大型 Web 應用程序,您就理解 變化 這個詞的含義。 MVC 減弱了業(yè)務邏輯接口和數(shù)據(jù)接口之間的耦合。盡管您可能永遠不會用 Struts 實 現(xiàn)一個系統(tǒng),但了解一下 Struts 或許使您能將其中的一些思想用于您以后的 Servlet 的 JSP 實現(xiàn)中。我們還得處理驗證、流程控制和更新應用程序的狀態(tài)等問題。 MVC 通過將問題分為三個類別來幫助解決單一模塊方法所遇到的某些問題: ? Model(模型) 模型包含應用程序的核心功能。有時它包含的唯一功能就是狀態(tài)。 ? View(視圖) 視圖提供模型的表示。視圖可以訪問模型的讀方法,但不能訪問寫方法。當更改模型時,視圖應得到通知。它創(chuàng)建并設置模型。這種無狀態(tài)行為使得模型很難將更改通知視圖。 另一個重大變化是實現(xiàn)視圖所用的技術與實現(xiàn)模型或控制器的技術不同。這種方法有幾個缺點: ? Java 程序員應該開發(fā)服務,而不是 HTML。 ? 服務的用戶應該能夠創(chuàng)建網(wǎng)頁來滿足它們的特定需要。 ? 嵌在代碼中的 HTML 很難看。圖 4 顯示了 MVC 的 Web 改寫版,通常也稱為 MVC Model 2 或 MVC 2。這個定義表示 Struts 是一個框架,而不是一個庫,但 Struts 也包含了豐富的標記庫和獨立于該框架工作的實用程序類。 圖 5. Struts 概覽 Struts 概覽 ? Client browser(客戶瀏覽器) 來自客戶瀏覽器的每個 HTTP 請求創(chuàng)建一個事件。 ? Controller(控制器) 控制器接收來自瀏覽器的請求,并決定將這個請求發(fā)往何處。 文件配置控制器。就 Struts 而言,這是通過作為實際業(yè)務邏輯 “ 瘦 ” 包裝的 Action 類完成的。業(yè)務對象更新應用程序的狀態(tài)。 JSP 文件使用 JSP 標記讀取來自 ActionForm bean 的信息。其中沒有流程邏輯,沒有業(yè)務邏輯,也沒有模型 信息 只有標記。 詳細分析 Struts 圖 6 顯示的是 包的一個最簡 UML 圖。 圖 6. Command (ActionServlet) 與 Model (Action amp。如果您對此比較熟悉,您會將配置信息放入一個文件,并在運行時加載這個文件。 現(xiàn)在好多了,我們有了 Java 技術、 XML、 J2EE,等等。正如您所料 控制器使用配置文件 以使您不必對這些值進行硬編碼。 ActionServlet 是該 MVC 實現(xiàn)的 Command 部分,它是這一框架的核心。如前所述, 文件配置該 Command。文件 指示 ActionServlet 如何使用這些擴展的類。這使得人們更容易查看和理解它,尤其是對于大型應用程序而言。 ? Java 開發(fā)人員也不必在更改流程以后重新編譯代碼。 ActionForm 類 ActionForm 維護 Web 應用程序的會話狀態(tài)。當我說 輸入表單模型 時 ,是指 ActionForm 表示的是由 HTML 表單設置或更新的一般意義上的數(shù)據(jù)。 Struts 框架將執(zhí)行以下操作: ? 檢查 UserActionForm 是否存在;如果不存在,它將創(chuàng)建該類的一個實例。沒有太多討厭的 () 調用。 ? Struts 框架在將 UserActionForm 傳遞給業(yè)務包裝 UserAction 之前將更新它的狀態(tài)。 注: 這并不總是明智之舉。在 UserAction 類中進行狀態(tài)驗證可能更好。 注: ? 文件控制 HTML 表單請求與 ActionForm 之間的映射關系。 ? UserActionForm 可跨多頁進行映射,以執(zhí)行諸如向導之類的操作。 Action 類的用途是將 HttpServletRequest 轉換為業(yè)務邏輯。 ActionServlet (Command) 使用 perform() 方法將參數(shù)化的類傳遞給 ActionForm 。當事件進展到這一步時,輸入表單數(shù)據(jù)(或 HTML 表單數(shù)據(jù))已被從請求流中提取出來并轉移到 ActionForm 類中。 Action 類應該控制應用程序的流程,而不應該控制應用程序的邏輯。 考慮 Action 類的另一種方式是 Adapter 設計模式。 Adapter 使類能夠協(xié)同工作,如果沒有 Adapter,則這些類會因為不兼容的接口而無法協(xié)同工作。本例中的客戶機是 ActionServlet ,它對我們的具體業(yè)務類接口一無所知。通過擴展 Action ,我們使得我們的業(yè)務接口與 Struts 業(yè)務接口保持兼容。 Action 開始為一個接口,后來卻變成了一個類。) Error 類 UML 圖(圖 6)還包括 ActionError 和 ActionErrors 。 ActionErrors 是 ActionError 類的容器, View 可以使用標記訪問這些 類。 圖 7. Command (ActionServlet) 與 Model (Action) 之間的關系的 UML 圖 ActionMapping 類 輸入事件通常是在 HTTP 請求表單中發(fā)生的, servlet 容器將 HTTP 請求轉換為 HttpServletRequest 。 確定 Controller 調用哪個 Action 類。(您可能尚未注意到這一點,以 s結尾的類就是容器) ActionMapping 包含有關特定事件如何映射到特定 Action 的信息。這樣就使 Action 可訪問用于控制流程的信息。 Struts 的優(yōu)點 ? JSP 標記機制的使用 標記特性從 JSP 文件獲得可重用代碼和抽象 Java 代碼。 ? 標記庫 為什么要另發(fā)明 一種輪子,或標記庫呢?如果您在庫中找不到您所要的標記,那就自己定義吧。 ? 開放源碼 您可以獲得開放源碼的全部優(yōu)點,比如可以查看代碼并讓使用庫的每個人檢查代碼。 ? MVC 實現(xiàn)樣例 如果您希望創(chuàng)建您自己的 MVC 實現(xiàn),則 Struts 可增加您的見識。當然,這是一把雙刃劍。 Struts 的缺點 ? 仍處于發(fā)展初期 Struts 開發(fā)仍處于初級階段。 ? 仍在變化中 這個框架仍在快速變化。為了避免使用不贊成使用的方法,您可能隔一天就需要下載最新的 Struts。由于 Struts 中的變化,我不得不數(shù)次修改我的示例,但我不保證我的示例能與您下載的 Struts 協(xié)同工作。在開發(fā)網(wǎng)頁的過程中,我們是否應該讓網(wǎng)頁設計人員訪問 Java 代碼?某些框架(如 Velocity)說不應該,但它提供了另一種 Web 開發(fā)語言讓我們學習。最重要的是,如果讓網(wǎng)頁設計人員使用一點 Java,他將使用大量的 Java。在 ASP 開發(fā)中,您應該創(chuàng)建 COM 對象,然后編寫少量的 ASP 腳本將這些 COM 對象聯(lián)系起來。我會聽到這樣的話, “ 既然我可以用 VBScript 直接編寫 COM 對象,為什么還要等 COM 開發(fā)人員來創(chuàng)建它呢? ” 通過使用標記庫, Struts 有助于限制 JSP 文件中所需的 Java 代碼的數(shù)量。無論您決定使用哪種類型的框架,您都應該了 解您要在其中部署和維護該框架的環(huán)境。 ? 有限的適用范圍 Struts 是一種基于 Web 的 MVC 解決方案,所以必須用 HTML、 JSP 文件和 servlet 來實現(xiàn)它。僅憑這一點遠不能解決您的全部安裝問題,除非使用 Tomcat 。我建議您在遇到問題時訪問 Struts 用戶郵件列表的歸檔資料(請參閱 參考資源 )。毫無疑問,要理解 Struts 必須接受一定的培訓。歡迎訪問本網(wǎng)站。在不到 5 年的時間內,我已經(jīng)目睹了從 cgi/perl 到 ISAPI/NSAPI、再到使用 VB 的 ASP、一直到現(xiàn)在的 Java 和 J2EE 的變遷。您可以從 Sun 的網(wǎng)站獲得新的 JSP 和 Servlet 規(guī)范的草案。
點擊復制文檔內容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1