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

正文內(nèi)容

基于android無線電子菜譜系統(tǒng)開發(fā)畢業(yè)論文-在線瀏覽

2025-08-15 00:04本頁面
  

【正文】 完整的記錄在自己相應(yīng)的表中,中間表則記錄訂單和菜品的對應(yīng)關(guān)系,減少了數(shù)據(jù)的冗余。將概念設(shè)計從設(shè)計過程中獨立開來,使各階段的任務(wù)相對單一化,設(shè)計復(fù)雜程度大大降低,不受特定DBMS的限制。 ER關(guān)系圖解釋如下:1) 一個餐桌上在不同時間可以有多條訂單信息,而一個訂單只能有對應(yīng)著一個餐桌。3) 一個訂單對應(yīng)多個訂單_菜品記錄,一個訂單_菜品記錄對應(yīng)一個訂單。 數(shù)據(jù)庫邏輯設(shè)計 由于概念設(shè)計的結(jié)果是ER圖,DBMS一般采用關(guān)系型(我們采用的MySQL就是關(guān)系型的DBMS),因此數(shù)據(jù)庫的邏輯設(shè)計過程就是把ER圖轉(zhuǎn)化為關(guān)系模式的過程。 數(shù)據(jù)庫關(guān)系模式圖 數(shù)據(jù)庫的實現(xiàn) MySQL是一個快速的、多線程、多用戶和健壯的SQL數(shù)據(jù)庫服務(wù)器。MySQL是一個關(guān)系數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫把數(shù)據(jù)存放在分立的表格中,這比把所有數(shù)據(jù)存放在一個大倉庫中要好得多,這樣做將增加你的速度和靈活性。MySQL數(shù)據(jù)庫服務(wù)器是一個客戶/服務(wù)器系統(tǒng),它由多線程SQL服務(wù)器組成,支持不同的后端、多個不同的客戶程序和庫、管理工具和廣泛的應(yīng)用程序接口(APIs)。 用戶表表名用戶表 users說明記錄用戶的個人基本信息編號字段名數(shù)據(jù)類型是否為空是否為主鍵是否為外鍵說明1U_idINTEGERNYN用戶ID,自動增長2U_nameVARCHAR(150)NNN用戶名3U_passwordVARCHAR(150)NNN密碼4U_VARCHAR(100)YNN用戶郵箱5U_telVARCHAR(45)YYN電話號碼6U_statusVARCHAR(45)YNN用戶狀態(tài),默認”active”7U_roleVARCHAR(45)YNN用戶角色,分為”user”和”admin”。無線點餐主要由菜品管理模塊,餐桌管理模塊,訂單管理模塊,用戶管理模塊構(gòu)成。Spring貫穿在三層中,負責(zé)Hibernate的配置和bean的依賴注入,方便程序的協(xié)同工作。添加菜品信息由管理員在添加頁面上輸入。更新操作首先從數(shù)據(jù)庫取得原來的數(shù)據(jù)顯示到頁面上,管理員對相應(yīng)信息做完修改后點擊確認按鈕,通過業(yè)務(wù)層之間的調(diào)用將數(shù)據(jù)庫中的信息更新。在其他顯示、查詢等操作中,對于標(biāo)記為不可用狀態(tài)的數(shù)據(jù)不做操作。數(shù)據(jù)流圖如下: 信息輸入數(shù)據(jù)流圖 整體設(shè)計 用戶開始點餐時首先輸入人數(shù)等信息創(chuàng)建一個新的訂單,狀態(tài)為“new”,點菜過程中訂單內(nèi)的點菜數(shù)據(jù)增加,狀態(tài)認為“new”,點菜完成時用戶點擊提交按鈕,訂單狀態(tài)變?yōu)椤皊ubmitted”,用戶付款后訂單狀態(tài)變?yōu)椤皃ayed”。 訂單狀態(tài)遷移圖 用戶點餐功能 用戶首先在新增訂單頁面輸入就餐人數(shù)等信息,點擊提交按鈕后新的訂單創(chuàng)建,頁面跳轉(zhuǎn)到點菜頁面,用戶瀏覽菜單信息,選擇要點的菜,使用數(shù)字輸入框左、右兩邊的加減符號改變要點的份數(shù),點擊“點餐”按鈕將選擇的菜品加入訂單。信息確認無誤后點擊“提交訂單”按鈕將點菜信息保存到數(shù)據(jù)庫。整個點餐過程完成??刹捎肑avaMail的相關(guān)功能,使用pop3或SMTP協(xié)議發(fā)送郵件,要求發(fā)送者郵箱即系統(tǒng)默認用來發(fā)送郵件的郵箱必須支持Pop3或者SMTP協(xié)議。并桌:將用戶要求的兩個訂單桌號改為同一個。 用戶管理模塊設(shè)計 整體設(shè)計用戶管理模塊的主要功能有用戶注冊,用戶登陸,密碼修改,個人信息修改,用戶角色管理,權(quán)限管理。 角色管理功能用戶角色分為管理員和普通用戶兩種。角色切換后相應(yīng)的權(quán)限也做改變。 Web Service 接口設(shè)計訂單管理模塊Web Service提供以下接口:(1)添加訂單接口:public Oorder addOrder(int peopleNumber,int tid,String oaddon,String odescript,int uid)。(2)點菜功能接口: public boolean orderAddFood(int oid,MapInteger, Integer tempMap)。返回boolean,標(biāo)記點菜是否成功。orderID:訂單ID;foodID:要刪除的菜品ID;返回boolean標(biāo)記刪除是否成功。 orderID:訂單ID; currentTableID:當(dāng)前桌編號; desTableID:要換到的桌號;返回boolean標(biāo)記換桌是否成功。 orderID:訂單ID; peopleNumber:就餐人數(shù);返回boolean標(biāo)記更改人數(shù)是否成功。 orderID:訂單ID; 返回訂單總價;(7)付款功能接口: public boolean payOrder(int oid)。服務(wù)器端向外部發(fā)布Web Service時,處理Web Service請求。6 系統(tǒng)實現(xiàn) 開發(fā)環(huán)境及相關(guān)技術(shù)(1) EclipseEclipse 是一個開放源代碼的、基于Java的可擴展開發(fā)平臺。Eclipse平臺的目的,是提供多種軟件開發(fā)工具的整合機制,這些工具會成為Eclipse外掛程序,平臺必須用外掛程序加以擴充才有用處。這種外掛設(shè)計讓Eclipse具備強大擴充性,但更重要的是,此平臺提供一個定義明確的機制,讓各種外掛程序共通合作(透過延伸點extension points)與貢獻(contributions)),因此新功能可以輕易且無縫地加入平臺。Tomcat具有開源免費,小巧靈活等有點,適合中小型的應(yīng)用。在后臺程序中我們使用MySQL自帶的C API的方式對其進行操作,在Web查詢模塊中我們使用JDBC接口。Struts是建立在MVC這種公認的好的模式上的,Struts在M、V和C上都有涉及,但它主要是提供一個好的控制器和一套定制的標(biāo)簽庫上,也就是說它的著力點在C和V上,因此,它天生就有MVC所帶來的一系列優(yōu)點,如:結(jié)構(gòu)層次分明,高可重用性,增加了程序的健壯性和可伸縮性,便于開發(fā)與設(shè)計分工,提供集中統(tǒng)一的權(quán)限控制、校驗、國際化、日志等等;(5) Spring Spring是一個開源框架,它由Rod Johnson創(chuàng)建。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。從簡單性、可測試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。 Hibernate可以應(yīng)用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。為了從Apache Axis ,Apache Axis2提供了一個完整的對象模型和模塊化體系結(jié)構(gòu),這樣可以很容易的添加功能以及支持一個新的與Web services相關(guān)的說明和建議。添加菜品方法如下: /* * see addFood(, , double, int, int) */ Override public boolean addFood(String f_name, String f_pic, double f_price,double fdiscount,double timeToUse, String f_type,String fdescript,String faddon) { Food food=new Food()。 (f_pic)。 (timeToUse)。 (fdescript)。 (fdiscount)。 (food)。 return true。分頁獲得菜單信息方法如下:Override public PageResultSetFood listFood(String foodType,int pageSize,int page) { if(foodType==null||0.equals(foodType)) { hql=from Food f where =39。 } else { hql=from Food f where =39。 and =39。 } int totalRow = (hql)。 //獲取該頁的記錄ListFood list = (hql, (), ())。 (list)。 (In FoodManageServiceImplList Food successfull)。 }該方法接受要顯示的菜品狀態(tài)、分頁大小和要顯示的頁數(shù),返回數(shù)據(jù)的信息和分頁信息。+oid+39。 if(oorder!=null) {//IteratorEntryInteger, Integer iterator=().iterator()。 ()。 int foodId=(Integer) ()。 OrderFood of=new OrderFood()。 offood=(foodId)。 (addCount)。 (offood)。 } (submitted)。 (In OrderManageServiceImplOrder Add Food successfull)。 } else { (In OrderManageServiceImplOrder Add Food failed)。 } }該方法接受訂單ID和當(dāng)前訂單對應(yīng)的菜品的ID和數(shù)量組成的Map鍵值對,遍歷Map獲得每一個菜品ID和數(shù)量,將這些信息從插入到訂單_菜品中間表中,以完成點餐信息的記錄。 MailSenderInfo mailInfo = new MailSenderInfo()。 (25)。 (466741313)。//您的郵箱密碼 (466741313)。 (訂單提交成功)。 //這個類主要來發(fā)送郵件 SimpleMailSender sms = new SimpleMailSender()。//發(fā)送文體格式 try{ (mailInfo)。 主要界面(1) 用戶瀏覽頁面: 用戶進入餐廳首頁可以瀏覽餐廳環(huán)境和特色菜相關(guān)信息,采用圖片輪轉(zhuǎn)方式顯示。 個人管理頁面(3) 添加菜品頁: 管理員可在此頁面添加新的菜品信息。 菜單管理頁面(5) 修改菜品頁: 在此頁面,管理員可以更改已有菜品的。 新增訂單頁面(7) 點餐列表頁: 在此頁面,用戶可以選擇要點的菜及份數(shù)。 點餐列表頁面(8) 查看訂單頁: 用戶可以在此頁面查看已點菜的信息,可以繼續(xù)加菜,也可以刪除不要的菜。 查看訂單頁面(9) 訂單列表頁: 管理員可以在此頁面查看所有訂單信息,普通用戶可以查看自己的所有訂單。首先配置一個Hibernate JDBC的配置文件,如下所示: ==jdbc:mysql://localhost:3306/wirelessorder?useUnicode=trueamp。s automatic session context management =threadDisable the secondlevel cache =Echo all executed SQL to stdout =trueDrop and recreate the database schema on startup =update在實際操作中將Hibernate整合到Spring中,所以Hibernate的數(shù)據(jù)源(Datasource)及SessionFactory 。: ! load property file context:propertyplaceholder location=classpath*:/ bean id=dataSource class= property name=driverClassName value=${}/ property name=url value=${}/ property name=username value=${}/ property name=password value=${}/ /bean ! JdbcTemplate Configuration bean id=jdbcTemplate class= property name=dataSource ref=dataSource/ /bean bean id=sessionFactory class= property name=dataSource ref=dataSource / property name=hibernateProperties props prop key=${}/prop prop key=${}/prop prop key=${}/prop /prop
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1