




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第五章上機基于Servlet的MVC設計模式相關回顧什么是MVC設計模式?MVC設計模式各部分對應的組件是什么?上機目標教員講解上機目標升級網上訂餐系統,實現如下功能:
1、在購物車頁面點擊“結帳”按鈕,進入結帳頁面
2、在結帳頁面填寫并提交結帳信息到數據庫
3、結帳完畢,跳轉到結束頁面
在購物車頁面/ch05/shopCart.jsp中點擊“結帳”按鈕
跳轉到結帳頁面/ch05/checkOut.jsp顯示付款金額填寫提交信息確認信息并提交提交成功,跳轉到結束頁面/ch05/seeYou.jsp訓練技能點會進行MVC的應用開發開發環境準備1、在restrant工程/src目錄下建立/ch05目錄2、在restrant工程/webRoot目錄下建立/ch05目錄3、在/webRoot目錄下,將/ch04目錄下的全部文件復制到/ch05目錄下開發環境準備階段1訓練要點:
MVC設計模式中視圖的應用開發需求說明:
網上訂餐系統結帳功能-視圖實現思路
講解需求說明階段2實現思路及關鍵代碼:
1、修改/src/ch04/AddFoodToCart.java中的跳轉語句
2、實現購物車頁面“結帳”按鈕//如果session不存在,轉向/ch05/show.jspif(session==null){dispatcher=request.getRequestDispatcher("/ch05/show.jsp"); //轉向/ch05/shopCart.jsp顯示購物車
......dispatcher=request.getRequestDispatcher("/ch05/shopCart.jsp");將目錄/ch04改為/ch05<formmethod="POST"action="/restrant/ch05/checkOut.jsp">在購物車頁面,點擊“結帳按鈕”,提交POST請求到結帳頁面/ch05/checkOut.jsp階段2實現思路及關鍵代碼:
3、實現結帳頁面/ch05/checkOut.jsp<form......>//顯示付款金額:
doubletotal=((Double)session.getAttribute("total")).doubleValue();out.println(newDecimalFormat("0.00").format(total));</form>//從session中取出付款金額,并轉換為double類型//向頁面輸出格式化后的付款金額<formmethod="POST"action="/restrant/OrderServlet">//提交結帳信息:提交 送貨地址信息:<inputtype="text"name="address">......</form>//用POST協議提交數據給控制器/src/ch05/OrderServlet.java//提交各項結帳信息訂餐人、送貨地址、郵政編碼......講解實現思路和關鍵代碼階段2階段3完成時間:25分鐘需求說明:實現網上訂餐系統結帳功能-視圖
1、修改/src/ch04/AddFoodToCart.java當中的跳轉語句
2、實現購物車頁面/ch05/shopCart.jsp“結帳”功能
3、實現網上訂餐系統結帳頁面/ch05/checkOut.jsp
AddFoodToCart.java
shopCart.jspcheckOut.jsp
在購物車頁面/ch05/shopCart.jsp中點擊“結帳”按鈕
跳轉到結帳頁面/ch05/checkOut.jsp顯示付款金額填寫提交信息確認信息并提交常見調試問題及解決辦法代碼規范問題共性問題集中講解階段3訓練要點:
MVC設計模式中模型的應用開發需求說明:網上訂餐系統結帳功能-模型實現思路
講解需求說明階段4實現思路及關鍵代碼:1、在數據庫中建立訂單信息表foodOrderInfo2、在模型類中建立saveOrder方法
publicintsaveOrder(StringcustomerName,//訂餐人
Stringaddress, //送餐地址 StringzipCode, //郵政編碼
......){}講解實現思路和關鍵代碼階段4Connectioncon=DBConnection.getConnction();StringsqlStr="insertintofoodOrderInfo(customerName,address,zipCode,"+"telephone,movePhone,notice,totalPrice)values(?,?,?,?,?,?,?)";PrepareStatementpStatement=con.prepareStatement(sqlStr);pStatement.setString(1,customerName);......pStatement.setDouble(7,totalPrice);Resultresult=pStatement.executeUpdate();實現思路及關鍵代碼:3、實現saveOrder()方法,執行數據庫操作
//取得數據庫連接//sql語句-向數據庫foodOrderInfo表中插入訂單信息//返回預執行語句//依次設置insertsql語句中values()參數值//執行并返回sql語句執行結果集講解實現思路和關鍵代碼階段4需求說明:實現網上訂單系統結帳功能-模型
1、在restrant數據庫中建立訂單信息表foodOrderInfo (建庫腳本由教員提供)
2、實現結帳功能模型類/src/ch05/OrderModel.java
OrderModel.java完成時間:25分鐘階段5常見調試問題及解決辦法代碼規范問題共性問題集中講解階段5訓練要點:
MVC設計模式中控制器的應用開發
需求說明: 網上訂餐系統結帳功能-控制器實現思路
講解需求說明階段6實現思路及關鍵代碼:
1、定義doPost方法,獲取結帳頁面/ch05/checkOut.jsp提交的POST請求數據
2、取出付款金額HttpSessionsession=request.getSession();doubletotalPrice=((Double)session.getAttribute("total"))
.doubleValue();//從Session中取出付款金額,并轉換為double類型階段6實現思路及關鍵代碼:
3、調用結帳功能模型類,將數據存入數據庫表中
4、跳轉到結束頁面,銷毀Session數據OrderModelom=newOrderModel();om.saveOrder(customerName,address,zipCode,telephone, movePhone,notice,totalPrice);request.getRequestDispatcher("/ch05/seeYou.jsp") .forward(request,response);HttpSessionsession.invalidate();//調用OrderModle類的saveOrder()方法,將數據插入數據庫中foodOrderInfo表中//跳轉到結束頁面/ch05/seeYou.jsp//清除Session中的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五商標代理委托合同
- 公司與快遞公司合作協議書二零二五年
- 室外給排水工程施工合同
- 公司債權債務擔保合同二零二五年
- 2024年福建事業單位考試考務安排試題及答案
- 幼兒園后工作總結
- 提供證券投資咨詢服務協議書二零二五年
- 房子轉租合同的范例
- 農業經理人考試的行業背景分析試題及答案
- 歐美畫冊風商業計劃書-1
- 【永輝超市公司企業績效考核方法的案例分析(12000字論文)】
- 海康威視校招在線測評題庫
- 錳礦供應鏈風險評估與控制
- 學校課間安全教育課件
- 正大鍍鋅鋼管檢測報告
- 打樣中心管理制度
- 門球技、戰術教學講
- 美團外賣平臺轉讓協議
- 2023年1月自考11466現代企業人力資源管理概論試題及答案含解析
- 外研版(三年級起點)三年級下冊英語單詞表-
- 法律咨詢與服務
評論
0/150
提交評論