博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网上图书商城项目学习笔记-021取消订单\确认收货
阅读量:5211 次
发布时间:2019-06-14

本文共 3034 字,大约阅读时间需要 10 分钟。

一、流程分析

二、代码

1.view层

(1)desc.jsp

1 
2
3
4
5
取消订单
6
7
8
确认收货
9

 

2.servlet层

(1)OrderServlet.java 

1     /** 2      * 确认订单 3      * @param req 4      * @param resp 5      * @return 6      * @throws ServletException 7      * @throws IOException 8      */ 9     public String confirm(HttpServletRequest req, HttpServletResponse resp)10             throws ServletException, IOException {11         String id = req.getParameter("oid");12         int status = service.findStatus(id);13         14         if(status != 3) {15             req.setAttribute("code", "error");16             req.setAttribute("msg", "态不对,不能确认收货!");17             return "f:/jsps/msg.jsp";18         }19         service.updateStatus(id, 4);20         req.setAttribute("code", "success");21         req.setAttribute("msg", "恭喜,交易成功!");22         return "f:/jsps/msg.jsp";    23     }24     25     /**26      * 取消收货27      * @param req28      * @param resp29      * @return30      * @throws ServletException31      * @throws IOException32      */33     public String cancel(HttpServletRequest req, HttpServletResponse resp)34             throws ServletException, IOException {35         String id = req.getParameter("oid");36         int status = service.findStatus(id);37         38         if(status != 1) {39             req.setAttribute("code", "error");40             req.setAttribute("msg", "状态不对,不能取消!");41             return "f:/jsps/msg.jsp";42         }43         service.updateStatus(id, 5);44         req.setAttribute("code", "success");45         req.setAttribute("msg", "您的订单已取消!");46         return "f:/jsps/msg.jsp";    47     }

 

3.service层

(1)OrderService.java  

1     /** 2      * 修改订单状态 3      * @param id 4      * @param status 5      */ 6     public void updateStatus(String id, int status) { 7         try { 8             dao.updateStatus(id, status); 9         } catch (SQLException e) {10             throw new RuntimeException(e);11         }12     }13 14     /**15      * 查找订单状态16      * @param id17      * @return18      */19     public int findStatus(String id) {20         try {21             return dao.findStatus(id);22         } catch (SQLException e) {23             throw new RuntimeException(e);24         }25     }

 

4.dao层

(1)OrderDao.java

1     /** 2      * 修改订单状态 3      * @param id 4      * @param status 5      * @throws SQLException 6      */ 7     public void updateStatus(String id, int status) throws SQLException { 8         String sql = "update t_order set status=? where oid=?"; 9         qr.update(sql, status, id);10     }11     12     /**13      * 查找订单状态14      * @param id15      * @return16      * @throws SQLException17      */18     public int findStatus(String id) throws SQLException {19         String sql = "select status from t_order where oid=?";20         Number status = (Number) qr.query(sql, new ScalarHandler(), id);21         return status.intValue();22     }

 

转载于:https://www.cnblogs.com/shamgod/p/5171339.html

你可能感兴趣的文章
二级指针的三种内存模型
查看>>
制作透明背景图片(链接)
查看>>
【知识总结】后缀数组(Suffix_Array)
查看>>
转载<ViewPager更新问题>
查看>>
ReactJS 结合 antd-mobile 开发 h5 应用基本配置
查看>>
.Net Core 获取项目所有程序集,排除Microsoft、Nuget下载的
查看>>
RDLC报表问题:尚未指定报表“Report1”的报表定义
查看>>
cordova 生成发行版apk,并添加证书 – 畅玩Coding
查看>>
Expression Blend4经验分享:制作一个简单的文字按钮样式
查看>>
[Songqw.Net 基础]WPF插件化中同步Style
查看>>
SYSPROCESSES 查看连接
查看>>
MVC5+EF6 入门完整教程四
查看>>
Android零基础入门第16节:Android用户界面开发概述
查看>>
如果您想确保Windows 10在新用户登录时不安装内置应用程序,则必须删除所有配置的应用程序。...
查看>>
零元学Expression Blend 4 - Chapter 27 PathlistBox被Selected时的蓝底蓝框问题
查看>>
thinkPHP 模板的使用技巧(十三)
查看>>
JavaScript知识(一)
查看>>
SharePoint 2013 图文开发系列之计时器任务
查看>>
阻塞与死锁(三)——死锁的定位及解决方法
查看>>
SQLServer 2008 技术内幕——T-SQL 查询 笔记
查看>>