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

正文內(nèi)容

畢業(yè)設(shè)計-基于ssh的校內(nèi)網(wǎng)系統(tǒng)的設(shè)計與實現(xiàn)-文庫吧

2025-10-30 19:16 本頁面


【正文】 、Hibernate、 Spring三大框架的結(jié)構(gòu)等,另外介紹了 Ajax的各項技術(shù)。 論文的第三部分對系統(tǒng)進行需求分析,功能分析,并劃分系統(tǒng)模塊。 論文的第四部分為系統(tǒng)數(shù)據(jù)庫的設(shè)計,從概念設(shè)計,邏輯設(shè)計方面對數(shù)據(jù)庫。 論文的第五部分為系統(tǒng)具體的設(shè)計與實現(xiàn),包括系統(tǒng)開發(fā)環(huán)境和工具,系統(tǒng)各模塊的設(shè)計和實現(xiàn),及三大框架 的應(yīng)用體現(xiàn)。 2 系統(tǒng)相關(guān)技術(shù) Struts Struts 是 Apache 基金會 Jakarta 項目組的一個 Open Source 項目,它采用 MVC 模式,能夠很好地幫助 java 開發(fā)者利用 J2EE 開發(fā) Web 應(yīng)用。和其他的 java 架構(gòu)一樣,Struts 也是面向?qū)ο笤O(shè)計,將 MVC 模式 分離顯示邏輯和業(yè)務(wù)邏輯 的能力發(fā)揮得淋漓盡致。 Struts 體系結(jié)構(gòu) 讓我們從 MVC 角度觀察 struts 框架中的組件 框架中三個部分:模型,視窗和控制器。 1 模型 在 struts 框架中,模型 分為兩個部分: 5 系統(tǒng)的內(nèi)部狀態(tài) ; 可以改變狀態(tài)的操作(事務(wù)邏輯) 。 內(nèi)部狀態(tài)通常由一組 ActionForm JavaBean 表示。根據(jù)設(shè)計或應(yīng)用程序復(fù)雜度的不同,這些 Bean 可以是自包含的并具有持續(xù)的狀態(tài),或只在需要時才獲得數(shù)據(jù)(從某個數(shù)據(jù)庫)。 大型應(yīng)用程序通常在方法內(nèi)部封裝事務(wù)邏輯(操作),這些方法可以被擁有狀態(tài)信息的 bean 調(diào)用。比如購物車 bean,它擁有用戶購買商品的信息,可能還有checkOut()方法用來檢查用戶的信用卡,并向倉庫發(fā)定貨信息。 小型程序中,操作可能會被內(nèi)嵌在 Action類, 它是 struts 框架中控制器角色的一部分。當邏輯簡單時這個方法很適合。 建議用戶將事務(wù)邏輯(要做什么)與 Action 類所扮演的角色(決定做什么)分開。 2 視窗 由 JSP 建立, struts 包含擴展自定義標簽庫,可以簡化創(chuàng)建完全國際化用戶界面的過程。 3 控制器 struts 中,基本的控制器組件是 ActionServle 類中的實例 servlet,實際使用的servlet 在配置文件中由一組映射(由 ActionMapping類進行描述)進行定義。 Struts 框架 中的組件 框架中所使用的 組件: 1 ActionServlet 控制器 框架中的控制器組件是有 類實現(xiàn)的,這個類是 類的擴展。 Struts controller 基本功能是: (1) 截獲用戶的 Http 請求 。 (2) 把這個請求映射到相應(yīng)的 Action類,如果這是此類收到的第一個請求,將初始化實例并緩存。 (3) 創(chuàng)建或發(fā)現(xiàn)一個 ActionForm bean 實例(看配置文件是否定義),然 后將請求過程移植到 bean。 (4) 調(diào)用 Action 實例的 perform()方法并將 ActioForm bean,Action Mapping 對象 ,request 和 response 對象傳給它。 (5) perform返回一個 ActionForword 對象,此對象連接到相應(yīng)的 jsp 頁面 。 2 ActionClass 包含事務(wù)邏輯 6 Action 類真正實現(xiàn)應(yīng)用程序的事務(wù)邏輯,它們負責處理請求。在收到請求后,ActionServlet 會: 為這個請求選擇適當?shù)?Action 如果需要,創(chuàng)建 Action的一 個實例 調(diào)用 Action的 perform()方法 如果 ActionServlet 不能找到有效的映射,它會調(diào)用默認的 Action 類 ( 在配置文件中定義 ) 。如果找到了 ActionServlet 將適當?shù)?ActionMapping 類轉(zhuǎn)發(fā)給 Action,這個Action 使用 ActionMapping 找到本地轉(zhuǎn)發(fā),然后獲得并設(shè)置 ActionMapping 屬性。根據(jù)servlet 的環(huán)境和被覆蓋的 perform()方法的簽名, ActionServlet 也會傳送 ServletRequest對象或 HttpServletRequest對象。 3 ActionForm 顯示模塊數(shù)據(jù) 框架假設(shè)用戶在應(yīng)用程序中為每個表單都創(chuàng)建了一個 ActionForm bean,對于每個在 文件中定義的 bean,框架在調(diào)用 Action類的 perform()方法之前會進行以下操作: 在相關(guān)聯(lián)的關(guān)鍵字下,它檢查用于適當類的 bean 實例的用戶會話,如果在會話中沒有可用的 bean,它就會自動創(chuàng)建一個新的 bean并添加到用戶的會話中。 對于請求中每個與 bean屬性名稱對應(yīng)的參數(shù), Action調(diào)用相應(yīng)的設(shè)置方法。 當 Action perform()被調(diào)用時,最新的 ActionForm bean傳送給它,參數(shù)值就可以立即使用了。 ActionForm 類擴展 類,程序開發(fā)人員創(chuàng)建的bean 能夠包含額外的屬性,而且 ActionServlet 可能使用反射(允許從已加載的對象中回收信息)訪問它。 ActionForm類提供了另一種處理錯誤的手段,提供兩個方法: Public ActionErrors validate(ActionMappin mapping, ServletRequest request) Public ActionErrors validate(ActionMappin mapping, HttpServletRequest request) 你應(yīng)該在自己的 bean 里覆蓋 validate()方法,并在配置文件里設(shè)置 action元素的validate 為 true。在 ActionServlet 調(diào)用 Action 類前,它會調(diào)用 validate(),如果返回的ActionErrors 不是 null,則 ActinForm 會根據(jù)錯誤關(guān)鍵字將 ActionErrors 存儲在請求屬性列表中。 如果返回的不是 null,而且長度大于 0,則根據(jù)錯誤關(guān)鍵字將實例存儲在請求的屬性列表中,然后 ActionServlet 將響應(yīng)轉(zhuǎn)發(fā)到配置文件 action元素的 input 屬性所指向的目標。 7 如果需要執(zhí)行特定的數(shù)據(jù)有效性檢查,最好在 Action 類中進行這個操作,而不是在 ActionForm類中進行。 方法 reset()可將 bean的屬性恢復(fù)到默認值: public void reset(ActionMapping mapping,HttpServletRequest request) public void reset(ActionMapping mapping,ServletRequest request) 典型的 ActionFrom bean 只有屬性的設(shè)置與讀取方法( getXXX) ,而沒有實現(xiàn)事務(wù)邏輯的方法。只有簡單的輸入檢查邏輯,使用的目的是為了存儲用戶在相關(guān)表單中輸入的最新數(shù)據(jù),以便可以將同一網(wǎng)頁進行再生,同時提供一組錯誤信息,這樣就可以讓用戶修改不正確的輸入數(shù)據(jù)。而真正對數(shù)據(jù)有效性進行檢查的是 Action 類或適當?shù)氖聞?wù)邏輯 bean。 4 ActionMapping 幫助控制器將請求映射到操作 將特定請求映射到特定 Action 的相關(guān)信息存儲在 ActionMapping 中, ActionServelt將 ActionMapping 傳送到 Action 類的 perform()方法, Action 將使用 ActionMapping 的findForward()方法,此方法返回一個指定名稱的 ActionForward,這樣 Action 就完成了本地轉(zhuǎn)發(fā)。若沒有找到具體的 ActionForward,就返回一個 null。 5 ActionForward 用來指示操作轉(zhuǎn)移的對象 目的是控制器將 Action類的處理結(jié)果轉(zhuǎn)發(fā)至目的地。 Action 類獲得 ActionForward 實例的句柄,然后可用三種方法返回 ActionServlet,所以我們可以這樣使用 findForward(): ActionServlet 根據(jù)名稱獲取一個全局轉(zhuǎn)發(fā) ActionMappin實例被傳送到 perform()方法,并根據(jù)名稱找到一個本地轉(zhuǎn)發(fā) 6 ActionError 用來存儲和回收錯誤 struts 提供了兩個類來處理錯誤: ActionErrors 和 ActionError ,它們都擴展。 ActionErrors 保存著 ActionError 對象的集合,其中每一個代表了獨立的錯誤信息。每個 ActionError 都包含了關(guān)鍵字,能夠映射到資源文件中存儲的錯誤信息,而這個資源文件是在 ActionServlet 初始化參數(shù)中指定的。 7 Struts 標記庫 可以減輕開發(fā)顯示層次的工作 Hibernate Hibernate 是一個開放源代碼的對象關(guān)系映射框架,它對 JDBC 進行了非常輕量級的對象封裝,使得 Java 程序員可以隨心所欲的使用對象 編程思維來操縱數(shù)據(jù)庫。 Hibernate 可以應(yīng)用在任何使用 JDBC 的場合,既可以在 Java 的客戶端程序使用,也可 8 以在 Servlet/JSP 的 Web 應(yīng)用中使用,最具革命意義的是, Hibernate 可以在應(yīng)用 EJB 的J2EE 架構(gòu)中取代 CMP,完成數(shù)據(jù)持久化的重任。 Hibernate 核心接口 Hibernate 的核心接口一共有 5 個,分別為 :Session、 SessionFactory、 Transaction、Query 和 Configuration。這 5 個核心接口在任何開發(fā)中都會用到。通過這些接口, 不僅可以對持久化對象進行存取,還能夠進行事務(wù)控制。下面對這五個核心接口分別加以介紹。 1 Session 接口 : Session接口負責執(zhí)行被持久化對象的 CRUD 操作 (CRUD 的任務(wù)是完成與數(shù)據(jù)庫的交流,包含了很多常見的 SQL 語句。 )。但需要注意的是 Session 對象是非線程安全的。同時, Hibernate 的 session不同于 JSP 應(yīng)用中的 HttpSession。這里當使用 session這個術(shù)語時,其實指的是 Hibernate 中的 session,而以后會將 HttpSesion對象稱為用戶 session。 2 SessionFactory 接口 : SessionFactory 接口負責初始化 Hibernate。它充當數(shù)據(jù)存儲源的代理,并負責創(chuàng)建 Session對象。這里用到了工廠模式。 需 要注意 的是 SesionFactory 并不是輕量級的,因為一般情況下,一個項目通常只需要一個 SessionFactory 就夠,當需要操作多個數(shù)據(jù)庫時,可以為每個數(shù)據(jù)庫指定一個SessionFactory。 3 Configuration 接口 :Configuration 接 口負責配 置并啟動 Hibernate , 創(chuàng)建SessionFactory 對象。在 Hibernate 的啟動的過程中, Configuration 類的實例首先定位映射文檔位置、讀取配置,然后創(chuàng)建 SessionFactory對象。 4 Transaction 接口: Transaction 接口負責事務(wù)相關(guān)的操作。它是可選的,開發(fā)人員也可以設(shè)計編寫自己的底層事務(wù)處理代碼。 5 Query和 Criteria 接口: Query和 Criteria 接口負責執(zhí)行各種數(shù)據(jù)庫查詢。它可以使用 HQL語言或 SQL語句兩種表達方式 Spring 1 目的:解決企業(yè)應(yīng)用開發(fā) 的復(fù)雜性 2 功能:使用基本的 JavaBean代替 EJB,并提供了更多的企業(yè)應(yīng)用功能 3 范圍:任何 Java 應(yīng)用 , 簡單來說, Spring 是一個輕量級的控制反轉(zhuǎn) (IoC)和面向切面 (AOP)的容器框架。 4 輕量 —— 從大小與開銷兩方面而言 Spring都是輕量的。完整的 Spring框架可以在一個大小只有 1MB 多的 JAR 文件里發(fā)布。并且 Spring 所需的處理開銷也是微不足 9 道的。此外, Spring 是非侵入式的:典型地, Spring 應(yīng)用中的對象不依賴于 Spring 的特定類。 5 控制反轉(zhuǎn) —— Spring通過一種稱作控制反轉(zhuǎn) ( IoC)的技術(shù)促進了松耦合。當應(yīng)用了 IoC,一個對象依賴的其它對象會通過被動的方式傳遞進來,而不是這個對象自己創(chuàng)建或者查找依賴對象。你可以認為 IoC 與 JNDI 相反 —— 不是對象從容器中查找依賴,而是容器在對象初始化時不等對象請求就主動將依賴傳遞給它。 6 面向切面 —— Spring 提供了面向切面編程的豐富支持,允許通過分離應(yīng)用的業(yè)務(wù)邏輯與系統(tǒng)級服務(wù)(例如審計( auditing)和事務(wù)( transaction)管理)進行內(nèi)聚性的開發(fā)。應(yīng)用對象只實現(xiàn)它們應(yīng)該做的 —— 完成業(yè)務(wù)邏輯 —— 僅此 而已。它們并不負責(甚至是意識)其它的系統(tǒng)級關(guān)注點,例如日志或事務(wù)支持。 7 容器 —— Spring 包含并管理應(yīng)用對象的配置和生命周期,在這個意義上它是一種容器,你 可以
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1