版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、(項(xiàng)目管理)項(xiàng)目文檔2020年4月多年的企業(yè)咨詢顧問經(jīng)驗(yàn) 經(jīng)過實(shí)戰(zhàn)險(xiǎn)證可以落地施亍的卓越管理方案,值得您下載詡臺(tái):AJAX購(gòu)物網(wǎng)站設(shè)計(jì)文檔一、要實(shí)現(xiàn)的功能用戶訪問網(wǎng)站時(shí),如未登陸成用戶,則只可以查看網(wǎng)站中的商品信息不能購(gòu)買商品。注 冊(cè)為會(huì)員并登陸后,可以購(gòu)買指定數(shù)量的商品,購(gòu)買完所有商品后,用戶可調(diào)用結(jié)帳功能對(duì) 所購(gòu)買的商品進(jìn)行結(jié)帳,在整個(gè)購(gòu)買過程中,用戶所購(gòu)買的商品放在虛擬購(gòu)物車中,并未記 錄數(shù)據(jù)庫(kù)中。二、AJAX技術(shù)在本例中的作用實(shí)現(xiàn)動(dòng)態(tài)無(wú)刷新的頁(yè)面效果,即通過動(dòng)態(tài)改變頁(yè)面中層的內(nèi)容改變頁(yè)面的內(nèi)容。三、數(shù)據(jù)庫(kù)模型設(shè)計(jì)圖3-1數(shù)據(jù)庫(kù)模型圖描述:編號(hào),庫(kù)表名稱,描述1,ngwc_commodi
2、ties,商品信息表2,ngwc_operlog,用戶操作記錄,存購(gòu)買信息3,ngwc_user, 用戶表4,ngwc_type,用戶類型表四、類的設(shè)計(jì).持久化類的設(shè)計(jì)圖4-1持久化類類圖描述:編號(hào),類名描述1,NgwcCommodities,商品信息類2,NgwcOperlog,用戶購(gòu)買信息類,存購(gòu)買信息3,NgwcUser,用戶信息類4,NgwcType,用戶類型類說明:持久化類的每個(gè)類的屬性都有其對(duì)應(yīng)的setter和getter方法,Hibernate 通過持久化類可進(jìn)行數(shù)據(jù)庫(kù)的操作。.虛擬購(gòu)物車類的設(shè)計(jì)圖4-2虛擬購(gòu)物車類類圖描述:編號(hào),類名描述1,Cart,虛擬購(gòu)物車類2,BeanI
3、tems,購(gòu)物車中存放的每一個(gè)商品.數(shù)據(jù)庫(kù)操作類的設(shè)計(jì)圖4-3數(shù)據(jù)庫(kù)操作類類圖描述:編號(hào),類名描述1,Dao,數(shù)據(jù)庫(kù)操作類2,DaoImpl,數(shù)據(jù)庫(kù)操作類的接口,定義的數(shù)據(jù)庫(kù)操作類中實(shí)現(xiàn)在方法Dao類中實(shí)現(xiàn)的方法說明:ListshowAllComms( int start);/ 按分頁(yè)得所有商品ListshowFindComms(Stringcommname, int start);/ 按查找得所有商品得查找的商品個(gè)數(shù)int getPages();/得所有商品總頁(yè)數(shù)int getFindCommsPages(Stringcommname);/void addUser(NgwcUseruser)
4、;/向數(shù)據(jù)庫(kù)添加一個(gè)用戶NgwcUsergetUserInfo(Stringusername,Stringpassword);/通過用戶名和密碼得到用戶信息public ListgetUserLogs(NgwcUseruser);/得到當(dāng)前用戶的購(gòu)買記錄publicboolean existUser(Stringusername);/ 是否存在用戶boolean existUser(Stringusername,Stringpassword);/是否存在該用戶名及密碼對(duì)應(yīng)的用戶publicvoid saveLogs(NgwcOperloglogs);/保存 logspublicvoid upd
5、ateComms(NgwcCommoditiescomm,int num);/ 更新商品信息publicvoid updateUser(NgwcUseruser);/ 更新用戶信息publicboolean registUser(NgwcUseruser);/添力口一個(gè)用戶五、功能實(shí)現(xiàn)1.注冊(cè)功能實(shí)現(xiàn)功能說明:用戶點(diǎn)擊首頁(yè)中的注冊(cè)鏈接后,頁(yè)面中顯示注冊(cè)層供用戶填寫注冊(cè)信息,當(dāng)用戶輸入新注冊(cè)的用戶名時(shí),ajax調(diào)用后臺(tái)名為checkUser的servlet判斷是否存在同名 用戶,并返回判斷的信息;當(dāng)用戶輸入密碼和確認(rèn)密碼時(shí),判斷密碼是否和確認(rèn)密 碼相同;若以上兩個(gè)條件同時(shí)滿足,注冊(cè)按鈕可用,否剛
6、,注冊(cè)按鈕不可用。完成 輸入信息后,點(diǎn)擊注冊(cè)按鈕進(jìn)行用戶注冊(cè)操作,注冊(cè)操作完成后,系統(tǒng)自動(dòng)為用戶 完成登陸操作并返回首頁(yè)。圖5-1-1注冊(cè)功能活動(dòng)圖圖5-1-2注冊(cè)功能順序圖描述:編號(hào),名稱,類型描述1,Index.jsp,頁(yè)面文件首頁(yè)頁(yè)面2,ajax.js,Js文件,存放所有的javascript 函數(shù)3,checkUser,Servlet,檢察是否存在同名用戶4,RegistAction,Action,點(diǎn)擊注冊(cè)按鈕后提交到的頁(yè)面5,Session,Session對(duì)象,當(dāng)前用戶的 session6,Dao,類,數(shù)據(jù)庫(kù)操作類2.登陸功能實(shí)現(xiàn)功能說明:用戶點(diǎn)擊完登陸鏈接后,在頁(yè)面中顯示登陸層用戶
7、輸入完用戶名和密碼后點(diǎn)擊登陸按鈕完成登陸操作。圖5-2-1登陸功能活動(dòng)圖圖5-2-2登陸功能順序圖編號(hào),名稱,類型描述1,Index.jsp,頁(yè)面文件首頁(yè)頁(yè)面2,ajax.js,Js文件,存放所有的javascript 函數(shù)3,login,Servlet, 執(zhí)行登陸操作4,Session,Session對(duì)象,當(dāng)前用戶的 session5,Dao,類,數(shù)據(jù)庫(kù)操作類3 .顯小所有冏品功能實(shí)現(xiàn)功能說明:根據(jù)是否已經(jīng)登陸判斷每一項(xiàng)商品的購(gòu)買按鈕是否可用,根據(jù)用戶請(qǐng)求的頁(yè)數(shù)從 數(shù)據(jù)庫(kù)中查詢出數(shù)據(jù),生成數(shù)據(jù)集合,根據(jù)按鈕可用信息及數(shù)據(jù)集合生成頁(yè)面信息并回傳顯示。圖5-3-1顯不所有商品活動(dòng)圖圖5-3-2顯
8、布所有商品順序圖描述編號(hào),名稱,類型描述1,Index.jsp,頁(yè)面文件首頁(yè)頁(yè)面2,ajax.js,Js文件,存放所有的javascript 函數(shù)3,ShowAllComms,Servlet,執(zhí)行顯示所有商品操作4,Session,Session 對(duì)象,當(dāng)前用戶的 session5,Dao,類,數(shù)據(jù)庫(kù)操作類4.顯示所有查找的商品功能說明:根據(jù)是否已經(jīng)登陸判斷每一項(xiàng)商品的購(gòu)買按鈕是否可用,根據(jù)用戶請(qǐng)求的頁(yè) 數(shù)及需要查詢的商品名稱從數(shù)據(jù)庫(kù)中查詢出數(shù)據(jù),生成數(shù)據(jù)集合,根據(jù)按鈕可用信息及 數(shù)據(jù)集合生成頁(yè)面信息并回傳顯示。圖5-4-1顯示所有查找商品活動(dòng)圖圖5-4-2顯示所有查找商品順序圖描述編號(hào),名稱
9、,類型描述1,Index.jsp,頁(yè)面文件首頁(yè)頁(yè)面2,ajax.js,Js文件,存放所有的javascript 函數(shù)3,ShowFindComms,Servlet, 執(zhí)行顯示所有查找商品的操作4,Session,Session 對(duì)象,當(dāng)前用戶的 session5,Dao,類,數(shù)據(jù)庫(kù)操作類5.購(gòu)買商品功能說明:用戶在購(gòu)買商品時(shí),首先輸入要購(gòu)買的商品數(shù)量,如果要購(gòu)買的商品數(shù)量大于庫(kù)存的數(shù)量則不能執(zhí)行購(gòu)買操作,輸入正確的數(shù)量后點(diǎn)擊購(gòu)買按鈕執(zhí)行購(gòu)買操作,將用戶購(gòu)買的商品信息通過 ajax傳給后臺(tái)servlet進(jìn)行操作,完成購(gòu)買操作后,session中用戶信息的用戶帳戶余額根據(jù)用戶的折扣率及購(gòu)買商品的金
10、額減去相應(yīng)的數(shù)值,用戶購(gòu)買的商品信息將存入虛擬購(gòu)物車實(shí)例。最后在首頁(yè)中顯示。圖5-5-1購(gòu)買商品時(shí)序圖描述編號(hào),名稱,類型描述1,Index.jsp,頁(yè)面文件首頁(yè)頁(yè)面2,ajax.js,Js文件,存放所有的javascript 函數(shù)3,Buy,Servlet,執(zhí)行購(gòu)買商品操作4,Session,Session 對(duì)象,當(dāng)前用戶的 session圖5-5-2購(gòu)買商品活動(dòng)圖6.從購(gòu)物車中刪除商品功能說明:當(dāng)用戶想要從購(gòu)物車中刪除所買商品時(shí),在首頁(yè)左下方單擊相應(yīng)商品的刪除鏈接,轉(zhuǎn)向 DeleteFromCart并傳要?jiǎng)h除的商品id ,該Servlet負(fù)責(zé)將購(gòu)物車實(shí)例從 session中取出,將用戶指定
11、id的商品從購(gòu)物車中刪除最后,將購(gòu)物車存回session 并轉(zhuǎn)回首頁(yè)。圖5-6-1從購(gòu)物車中刪除商品活動(dòng)圖圖5-6-2從購(gòu)物車中刪除商品順序圖描述編號(hào),名稱,類型,描述1,Index.jsp,頁(yè)面文件首頁(yè)頁(yè)面2,DeleteFromCart,Servlet,執(zhí)行刪除操作的 Servlet3,Session,Session 對(duì)象,當(dāng)前用戶的 session7.確認(rèn)購(gòu)買操作功能說明:當(dāng)用戶購(gòu)買完商品后,執(zhí)行購(gòu)買操作,結(jié)帳當(dāng)前購(gòu)物車,修改當(dāng)前用戶余額,修改庫(kù)存余額,將購(gòu)買記錄存進(jìn)數(shù)據(jù)庫(kù)中。圖5-7-1確認(rèn)購(gòu)買操作活動(dòng)圖圖5-7-2確認(rèn)購(gòu)買操作順序圖描述編號(hào),名稱,類型,描述1,Index.jsp,頁(yè)
12、面文件首頁(yè)頁(yè)面2,ajax.js,Js文件所有的javascript 函數(shù)文件3,BuyComms,Servlet,執(zhí)行確認(rèn)購(gòu)買操作4,Session,Session對(duì)象,當(dāng)前用戶的 session5,Dao,類,數(shù)據(jù)庫(kù)操作類附錄.AJAX分頁(yè)顯示原理:用戶點(diǎn)擊要顯示的頁(yè)數(shù)鏈接后,調(diào)用相應(yīng)的ajax處理函數(shù),該函數(shù)將頁(yè)數(shù)作為參數(shù)傳遞Z后臺(tái)servlet進(jìn)行處理,在該后臺(tái) servlet中,將根據(jù)頁(yè)數(shù)信息對(duì)數(shù)據(jù)進(jìn)行加工,從數(shù)據(jù)庫(kù)中取出對(duì)應(yīng)頁(yè)上應(yīng)該顯示的商品信息,根據(jù)頁(yè)面生成規(guī)則生成 html頁(yè)面代碼,并將這些代碼回傳出去,ajax的接收處理函數(shù)接收到頁(yè)面代碼后,調(diào)用相應(yīng)標(biāo)記的innerHTML
13、方法改變顯示的內(nèi)容完成分頁(yè)顯示操作。圖附錄-1.虛擬購(gòu)物車類代碼分析Cart類:購(gòu)物車類packagecom.mjpc.util;importjava.util.Collection;importjava.util.HashMap;importjava.util.Iterator;importcom.mjpc.data.NgwcCommodities;publicclassCart購(gòu)物車中的商品集合 淇各個(gè)項(xiàng)目以 BeanItemprivateintNumOfCart;/ 購(gòu)物車中的商品總數(shù)HashMapcart;類對(duì)象形式存在Stringcartid;/* 購(gòu)物車的id號(hào),本例中并沒有使用,
14、其它應(yīng)用中可用其作為商品的訂單號(hào)(可通過sessionid 或其它方式獲取)*/publicCart()/購(gòu)物車類的構(gòu)造方法,初始化一個(gè)購(gòu)物車NumOfCart=0;cart=newHashMap();cartid=;publicHashMapgetCart()returncart;publicvoidsetCart(HashMapcart)this.cart=cart;publicStringgetCartid()returncartid;publicvoidsetCartid(Stringcartid)this.cartid=cartid; publicintgetNumOfCart()r
15、eturnNumOfCart;)publicvoidsetNumOfCart(intnumOfCart)NumOfCart=numOfCart;)publicvoidaddItem(Integerid,NgwcCommoditiescomm,intnum)向購(gòu)物車中添加一個(gè)商品/如果購(gòu)物車中沒有當(dāng)前 id的商品則新添加一個(gè)商品項(xiàng)目,購(gòu)物車商品數(shù)量加一if(!this.cart.containsKey(id)BeanItemsitem=newBeanItems(comm,num);this.cart.put(id,item);this.NumOfCart+;else/如果當(dāng)前購(gòu)物車中存在當(dāng)前id
16、的商品則在原有項(xiàng)目的基礎(chǔ)上購(gòu)買數(shù)量更新購(gòu)物車BeanItemsitem=(BeanItems)cart.get(id);item.setItemNum(item.getItemNum()+num);this.cart.put(id,item);publicvoidremoveItemByNum(intid)/刪除購(gòu)物車中key為id的項(xiàng)目,購(gòu)物車中商品數(shù)量減一 if(this.cart.containsKey(id) this.cart.remove(id);this.NumOfCart-;) ) publicCollectiongetAllItems()/得到購(gòu)物車中的所有商品returnt
17、his.cart.values(); ) publicdoublegetSum()/ 得到購(gòu)物車中商品的總價(jià)格 doublesum=0;Iteratorit=this.cart.values().iterator();while(it.hasNext()BeanItemsitem=(BeanItems)it.next();sum+=item.getItemPrice();) returnsum;) )BeanItems 類:購(gòu)物車中的商品以 BeanItems對(duì)象的形式存儲(chǔ)package com.mjpc.util;import com.mjpc.data.NgwcCommodities;pu
18、blicclass BeanItemsprivateint itemNum;/當(dāng)前商品的購(gòu)買數(shù)量private NgwcCommoditiescomm;/購(gòu)買的具體的商品privatedouble itemPrice;/當(dāng)前商品的價(jià)格 (數(shù)量*單彳)public BeanItems()/初始化一個(gè)購(gòu)物車中的商品itemNum=0;comm= new NgwcCommodities(); public NgwcCommoditiesgetComm() return comm;publicvoid setComm(NgwcCommoditiescomm) this .comm=comm;publicint getItemNum() return itemNum;publicvoid setItemNum( int itemNum)this .itemNum=i
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024屆高考語(yǔ)文一輪復(fù)習(xí)第1章信息類文本閱讀4第三節(jié)概念理解和要點(diǎn)概括題-找準(zhǔn)命題角度定位細(xì)微差別課件
- 工程全過程審計(jì)實(shí)施要點(diǎn)及案例分析
- 2024年低壓電工試題及答案
- 古詩(shī)詞誦讀《虞美人(春花秋月何時(shí)了)》課件 2024-2025學(xué)年統(tǒng)編版高中語(yǔ)文必修上冊(cè)
- 甘肅省天水市蘭州市2025屆高三一診考試數(shù)學(xué)試卷含解析
- 江蘇省鎮(zhèn)江一中等2025屆高考語(yǔ)文押題試卷含解析
- 廣東省十校2025屆高考臨考沖刺語(yǔ)文試卷含解析
- 2025屆福建省上杭縣一中高考沖刺英語(yǔ)模擬試題含解析
- 湖南省“五市十?!?025屆高考數(shù)學(xué)五模試卷含解析
- 10.1《勸學(xué)》課件 2024-2025學(xué)年統(tǒng)編版高中語(yǔ)文必修上冊(cè)-2
- 銷售人員心態(tài)培訓(xùn)-銷售人員心態(tài)培訓(xùn)
- 高中物理知識(shí)點(diǎn)講解-高中物理中常用的數(shù)學(xué)知識(shí)
- ACOG指南:妊娠期高血壓疾病指南(專家解讀)
- 服務(wù)外包公司評(píng)價(jià)表(共1頁(yè))
- 高等數(shù)學(xué)D7_5可降階高階微分方程
- 一年級(jí)數(shù)學(xué)月考試卷分析
- 污水管網(wǎng)工程監(jiān)理實(shí)施細(xì)則
- 辣椒介紹PPT課件
- 個(gè)人不良貸款清收案例3篇
- RCA成果報(bào)告書(2021參考模版)10docx
- 中國(guó)傳統(tǒng)節(jié)日
評(píng)論
0/150
提交評(píng)論