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

正文內(nèi)容

外賣訂餐管理系統(tǒng)-wenkub

2022-12-28 01:45:14 本頁(yè)面
 

【正文】 輯層,數(shù)據(jù)訪問層,各層之間都獨(dú)立,展現(xiàn)層與業(yè)務(wù) 邏輯層接口通信,業(yè)務(wù)邏輯層與數(shù)據(jù)訪問層接口通信,數(shù)據(jù)訪問層直接跟數(shù)據(jù)庫(kù)打交道,這樣具有很好的解耦性,每一層邏輯改變不會(huì)影響到另一層,對(duì)項(xiàng)目以后的可維護(hù)性及團(tuán)隊(duì)開發(fā)具有很大的作用,三層架構(gòu)流程如圖 13 所示: 展 現(xiàn) 層瀏 覽 器業(yè) 務(wù) 邏輯 層數(shù) 據(jù) 訪問 層數(shù) 據(jù) 庫(kù) 圖 13 三層架構(gòu) Hibernate 自動(dòng)建表 傳統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)都是先經(jīng)過建立 ER 圖,然后通過 ER 圖生成數(shù)據(jù)表 。 ( 4) 系統(tǒng)管理 用戶維護(hù):可以查看所有已注冊(cè)的用戶,查看該用戶的所有訂單列表,和刪除該用戶。用例如圖 9 所示。 系統(tǒng)功能 本系統(tǒng)采用面向?qū)ο蠓治龇椒?,下面是?duì)本系統(tǒng)的兩個(gè)子系統(tǒng)進(jìn)行分析說明。 DWR 的 javascript 庫(kù)包括幾個(gè)部分: dwr 的 javascript 引擎(即對(duì) AJAX 調(diào)用的封裝)、 dwr提供的一些非常有用的輔助 javascript 函數(shù)庫(kù)、以及 dwr 自動(dòng)幫我們生成的專門用于調(diào)用后臺(tái)JavaBean 方法的 javascript 庫(kù)。 ? Spring MVC 框架: MVC 框架是一個(gè)全功能的構(gòu)建 Web 應(yīng)用程序的 MVC 實(shí)現(xiàn)。所有這些都遵從 Spring 的通用事務(wù)和 DAO 異常層次結(jié)構(gòu)。 ? Spring DAO: JDBC DAO 抽象層 提供了有意義的異常層次結(jié)構(gòu),可用該結(jié)構(gòu)來管理異常處理和不同數(shù)據(jù)庫(kù)供應(yīng)商拋出的錯(cuò)誤消息。 ? Spring AOP:通過配置管理特性, Spring AOP 模塊直接將面向方面的編程功能集成到了 Spring 框架中。核心容器的主要組件是 BeanFactory,它是工廠模式的實(shí)現(xiàn)。其中比較重要的是核心容器模塊,其他模塊構(gòu)建在這個(gè)核心容器之上,核心容器定義創(chuàng)建、配置和管理 Bean 的方式,它提供 Spring 框架的基本功能。 Hibernate 與數(shù)據(jù)庫(kù)、應(yīng)用程序關(guān)聯(lián)關(guān)系如圖 4 所示: 圖 4: Hibernate 關(guān)聯(lián)關(guān)系圖 雖然 Hibernate 這個(gè)框架問世的時(shí)間不長(zhǎng),但已經(jīng)成為目前最流行的持久層解決方案,較之另一個(gè)持久 層框架 iBATIS, Hibernate 更具有面向?qū)ο蟮奶卣鳎惠^之傳統(tǒng)的 Entity EJB 的持久層解決方案, Hibernate 則采用低侵入式的設(shè)計(jì),即完全采用普通的 Java 對(duì)象( POJO),而不必繼承 Hibernate 的某個(gè)超類或?qū)崿F(xiàn) Hibernate 的某個(gè)接口。其實(shí),該處理過程是典型的 AOP(面向切面編程)的方式, Struts 2 處理過程模型如圖 3 所示: 圖 3: Struts2 處理過程模型 hibernate 技術(shù)介紹 Hibernate 是一個(gè)優(yōu)秀的 ORM 框架,通過使用 Hibernate 框架,允許開發(fā)人員使用面向?qū)ο蟮姆绞綄?duì)數(shù)據(jù)庫(kù)進(jìn)行訪問,避免采用 JDBC 訪問,造成面向?qū)ο缶幊膛c面向過程編程的沖突??刂破魍ㄟ^ Struts2 分發(fā) Servlet 過濾器(也就是人們常說的攔截器)來實(shí)現(xiàn),模型通過 Action 實(shí)現(xiàn),視圖則通過結(jié)果類型和結(jié)果組合實(shí)現(xiàn)。 Struts 2 提供了強(qiáng)大的整合能力,支持多種返回結(jié)果類型,改進(jìn)了 Struts 的標(biāo)簽庫(kù),引入 OGNL 表達(dá)式和值棧的概念,給開發(fā)者帶來了更好的體驗(yàn) [1]。 系統(tǒng)簡(jiǎn)介 本系統(tǒng)主要針對(duì)高校的外賣訂餐流程和對(duì)訂單處理實(shí)行信息化而構(gòu)建出來的 B/S 平臺(tái),學(xué)生通過瀏覽器上網(wǎng)訪問訂餐網(wǎng)站可以實(shí)現(xiàn)網(wǎng)上瀏覽菜式和訂餐功能,店員通過后臺(tái)管理登陸實(shí)現(xiàn)對(duì)訂單的處理,通過信息化處理給學(xué)生訂餐帶來方便更給外賣店管理人員帶來了長(zhǎng)遠(yuǎn)利益。 通過上面分析,電話訂餐已成為一種阻礙外賣行業(yè)發(fā)展的落后方式了,實(shí)行訂餐管理的信息化迫在眉睫,利用外賣訂餐管理系統(tǒng)對(duì)外賣流程實(shí)行信息化,不僅給訂餐顧客帶來了方便更給外賣店帶來了經(jīng)濟(jì)利益。 ( 5) 無法為店內(nèi)管理層提供準(zhǔn)確的決策信息,掌握及時(shí)的市場(chǎng)消息。 ( 2) 外賣店多數(shù)實(shí)行人工方式訂餐,即打電話訂餐登記。在我國(guó)高校內(nèi)餐飲行業(yè)外賣行業(yè)更是發(fā)展最快的一個(gè)行業(yè),在北師大珠海分校每年都有幾間新的外賣店的產(chǎn)生。本外賣訂餐管理系統(tǒng)是針對(duì)高校外賣店進(jìn)行具體的需求分析,采用 OOA(面向?qū)ο蠓治觯┖筒捎?UML 工具輔助開發(fā)分析,基于 S2SH( Struts2+Spring+Hibernate) 架構(gòu)進(jìn)行設(shè)計(jì)和開發(fā)。論文主要描述外賣訂餐管理系統(tǒng)的開發(fā)流程,分別從需求分析和系統(tǒng)設(shè)計(jì)、詳細(xì)設(shè)計(jì)與系統(tǒng)實(shí)現(xiàn)這幾個(gè)階段 進(jìn)行描述。外賣訂餐已經(jīng)成為北師大珠海分校學(xué)生生活中不可缺的一部分,而訂餐的方式也隨著學(xué)生們的要求提高,不斷的多樣化和成熟化。這種訂餐方式造成訂餐很不方便特別在訂餐高峰期,經(jīng)常出現(xiàn)打電話打不通的現(xiàn)象。 通過分析北師大的外賣行業(yè)的現(xiàn)狀,不難發(fā)現(xiàn)國(guó)內(nèi)高校的外賣店大多數(shù)都是依靠手 工的管理方式,沒有實(shí)行外賣訂餐管理的信息化,所以造成了不少問題。外賣訂餐管理給顧客和外賣店帶來了雙贏。 二 、相關(guān)技術(shù)介紹 本外賣訂餐管理系統(tǒng)選取 S2SH 架構(gòu)來設(shè)計(jì)和開發(fā), S2SH 是 SSH 升級(jí)版,以前的 SSH 架構(gòu)中 的用到的 MVC 框架是 struts,而 S2SH 中的 MVC 框架用到的是 struts2, struts2 與 struts 有很大的區(qū)別,配置更靈活,開發(fā)更方便,利用其開發(fā)的插件與 hibernate, spring 能達(dá)到無縫集成,本系統(tǒng)采用三層架構(gòu),用 struts2 處理前端, hibernate 封裝對(duì)數(shù)據(jù)庫(kù)的訪問, spring 對(duì) strutshibernate 和業(yè)務(wù)邏輯層中進(jìn)行對(duì)象的管理,三個(gè)框架各司其職,有利于項(xiàng)目開發(fā)的分工,使項(xiàng)目開發(fā)達(dá)到更靈活性和可維護(hù)性。從全局的角度來看 , Struts2 是一個(gè) pull(拉)類型的 MVC(或者 MVC2)框架,它與傳統(tǒng)類型的 MVC 框架的不同之處就在于在 Struts2 中, Action 擔(dān)任的是模型的角色,而非控制器的角色 ,雖然它的角色仍然有些重疊。值棧和 OGNL 提供了公共的線程和鏈接,并使得不同組件可以相互集成。在這種方式下,企業(yè)應(yīng)用的面向?qū)ο蠓治?、面向?qū)ο笤O(shè)計(jì)和面向?qū)ο缶幊桃幻}相承,讓系統(tǒng)分析、設(shè)計(jì)更加簡(jiǎn)潔。 Hibernate 是面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言和關(guān)系數(shù)據(jù)庫(kù)之間的橋梁, Hibernate 允許程序開發(fā)者采用面向?qū)ο蟮姆绞絹聿僮鲾?shù)據(jù)庫(kù)。其主要組件是 BeanFactory,它是工廠模式的實(shí)現(xiàn)。 BeanFactory 使用控制反轉(zhuǎn) ( IOC) 模式將應(yīng)用程序的配置和依賴性規(guī)范與實(shí)際的應(yīng)用程序代碼分開。所以,可以很容易地使 Spring 框架管理的任何對(duì)象支持 AOP。異常層次結(jié)構(gòu)簡(jiǎn)化了錯(cuò)誤處理,并且極大地降低了需要編寫的異常代碼數(shù)量(例如打開和關(guān)閉連接)。 ? Spring Web 模塊: Web 上下文模塊建立在應(yīng)用程序上下文模塊之上,為基于 Web 的應(yīng)用程序提供了上下文。通過策略接口,MVC 框架變成為高度可配置的, MVC 容納了大量視圖技術(shù),其中包括 JSP、 Velocity、 Tiles、iText 和 POI。 DWR 在運(yùn)行的時(shí)候,動(dòng)態(tài)生成一個(gè) javascript 庫(kù),這個(gè)庫(kù)是對(duì)后臺(tái) javabean 調(diào)用的封裝,我們可以直接使用這個(gè)庫(kù)來實(shí)現(xiàn)直接調(diào)用 JavaBean 的目的 [6],其流程圖 6所示: w e b 界 面J a v a S c rip tD W R J a v a S c rip t庫(kù)服 務(wù) 器D W R S e rv le t遠(yuǎn) 程 J a v a B e a n 圖 6: DWR 調(diào)用過程 三 、系統(tǒng)需求 本系統(tǒng)采用 OOA(面向?qū)ο蠓治?)和 UML( Unified Modeling Language)工具為指導(dǎo),本章主要對(duì)系統(tǒng)的需求以及系統(tǒng)功能進(jìn)行分析描述。 ( 1) 前臺(tái)管理系統(tǒng) 前臺(tái)管理系統(tǒng)供用戶瀏覽菜式,進(jìn)行菜式添加到購(gòu)菜車,用戶可以對(duì)購(gòu)菜車進(jìn)行更新、清除,用戶提交訂單后可以在訂單列表查看外賣狀態(tài),用例如圖 7 所示: 圖 7:用戶 用例圖 ( 2) 后臺(tái)管理系統(tǒng) 后臺(tái)管理系統(tǒng)有菜式管理、外賣訂單管理、 統(tǒng)計(jì)報(bào)表管理和系統(tǒng)管理四大模塊。 圖 9 菜式管理用例圖 外賣訂單管理:可以對(duì)外賣訂單的狀態(tài)進(jìn)行查看,改變。 店員維護(hù):可以對(duì)店員進(jìn)行添加、刪除、更新。而 Hibernate 開發(fā)團(tuán)隊(duì)提倡我們用另外一種開發(fā)模式,就是先建立實(shí)體類和編寫實(shí)體類映射文件,然后通過實(shí)體類和映射文件自動(dòng)生成數(shù)據(jù)表。本系統(tǒng)是采用建立實(shí)體類和編寫映射文件來生成數(shù)據(jù)表的開發(fā)模式。 5)登錄 調(diào)用 userDao 的 checkLogin 方法進(jìn)行登錄驗(yàn)證。 3)進(jìn)入業(yè)務(wù)方法 UpdatePasswordAction 調(diào)用業(yè)務(wù)方法 execute()進(jìn)行修改密碼。 ? 注冊(cè)用戶用例實(shí)現(xiàn) A、時(shí)序圖 B、描述 1)輸入用戶信息 輸入用戶名,用戶密碼,確認(rèn)密碼。 5)保存到數(shù)據(jù)庫(kù) 調(diào)用 userDao 的 addUser 方法將用戶數(shù)據(jù)保存到數(shù)據(jù)庫(kù)。 3)進(jìn)入業(yè)務(wù)方法 CommonMenuAction 進(jìn)入業(yè)務(wù)方法 execute 進(jìn)行添加菜式到購(gòu)菜車,在 execute 方法中調(diào)用 showMenuCatr 方法進(jìn)行菜式添加到購(gòu)物車。 7) 進(jìn)入數(shù)據(jù)驗(yàn)證 AddOrderAction 調(diào)用 validate() 方法進(jìn)行驗(yàn)證,如果用戶輸入不合法會(huì)進(jìn)行提示。 ? 管理人員處理訂單用例實(shí)現(xiàn) A、時(shí)序圖 B、描述 1)訪問訂單列表 管理人員訪問訂單列表,對(duì)訂單 的狀態(tài)進(jìn)行改變 2)進(jìn)行業(yè)務(wù)方法 ChangeStateActon 會(huì)進(jìn)入自己的業(yè)務(wù)方法 execute()進(jìn)行狀態(tài)的改變 3)獲取 OrderService 接口 ChangeStateAction 類獲取 OrderService 接口,以便調(diào)用 OrderServcie 關(guān)于更改訂單狀態(tài)的方法。本章介紹了如何構(gòu)建自己的 S2SH 環(huán)境以及如何編碼實(shí)現(xiàn)功能。 編碼實(shí)現(xiàn) 本系統(tǒng)代碼的編寫順序是先編寫持久層( DAO),再編寫業(yè)務(wù)邏輯層( Service),最后編寫表現(xiàn)層( Web)。 if (null != ul amp。 } //根據(jù)輸入的用戶名查詢用戶 public boolean getUserByUsername(String username) { List ul = ().find( from User user where =?, new String[] { username })。 } else { return false。 } } 編寫完畢后在 進(jìn)行配置,利用 spring 的 ioc 注入 sessionFactory實(shí)例,配置如下所示: bean id=userDao class= property name=sessionFactory ref=sessionFactory/property /bean Service 層的編寫 前面業(yè)務(wù)邏輯接口方法已經(jīng)設(shè)計(jì)好,下面是對(duì) UserServiceImpl 類進(jìn)行編寫,其關(guān)鍵代碼說明如下: public class UserServiceImpl implements UserService { private UserDao userDao。 } //查看用
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1