计算机课程设计-ssm在线点餐系统(沙箱支付)-javaweb外卖系统
计算机课程设计-ssm在线点餐系统(沙箱支付)-javaweb外卖系统
1 开发环境及工具下载
- 开发语言:Java
- 后台:SSM(Spring+SpringMVC+Mybatis)
- 前端:HTML+CSS+JavaScript+Layui
- 数据库:MySQL
- 工具:Idea、Eclipse、MyEclipse (选其一)
- 其他:jdk1.8、maven、微信开发者工具
eclipse 下载
mysql 5.7 下载
jdk 1.8 下载
tomcat 8.0 下载
maven 3.5 下载
idea 下载
2 功能模块
2.1 管理员功能
- 登录
- 添加菜品
- 修改菜品
- 用户管理
- 设置VIP用户
- 订单管理
- 导出订单信息表
- 销售统计
- 投诉中心
2.2 用户功能
- 注册
- 登录
- 查询菜品
- 选择菜品
- 修改个人信息
- 添地址管理
- 提交订单
- 沙箱
- 订单投诉
3 部分运行界面
3.1 用户部分运行界面
3.2 管理员部分运行界面
4 更多推荐
SpringBoot医药管理系统
springboot校园表白墙小程序
java航空订票系统
5 支付功能代码实现
/*** @program:OrderFood* @description:支付接口*/
@Controller
@RequestMapping("/Alipay")
public class PayController {long l = System.currentTimeMillis();@AutowiredOrderService service;/*** 购物车** @return*/@RequestMapping(value = "/Shopcart")public String Shopcart() {return "pay";}/*** 结算界面* @return*/@ResponseBody@RequestMapping(value = "/PayPage")public String payController (HttpServletRequest request, HttpServletResponse response) throws IOException {request.setCharacterEncoding("utf-8");response.setContentType("text/html;charset=utf-8");System.out.println("payPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP");HttpSession session=request.getSession();System.out.println(session.getAttribute("lastorder"));Order order=(Order)session.getAttribute("lastorder");//获得初始化的AlipayClientAlipayClient alipayClient = new DefaultAlipayClient(AlipayConfig.gatewayUrl, AlipayConfig.APP_ID, AlipayConfig.APP_PRIVATE_KEY, "json", AlipayConfig.CHARSET, AlipayConfig.ALIPAY_PUBLIC_KEY, AlipayConfig.sign_type);//设置请求参数AlipayTradePagePayRequest alipayRequest = new AlipayTradePagePayRequest();alipayRequest.setReturnUrl(AlipayConfig.return_url);alipayRequest.setNotifyUrl(AlipayConfig.notify_url);//商户订单号,商户网站订单系统中唯一订单号,必填String out_trade_no =""+order.getOrderid();System.out.println(out_trade_no);//付款金额,必填 ShopNameString total_amount =""+order.getAllprice();Double totalAmount = Double.valueOf(total_amount);System.out.println(total_amount);//订单名称,必填String subject ="订单:"+order.toString();System.out.println(subject);//商品描述,可空String body =request.getParameter("购物测试");// 该笔订单允许的最晚付款时间,逾期将关闭交易。取值范围:1m~15d。m-分钟,h-小时,d-天,1c-当天(1c-当天的情况下,无论交易何时创建,都在0点关闭)。 该参数数值不接受小数点, 如 1.5h,可转换为 90m。String timeout_express = "1c";alipayRequest.setBizContent("{\"out_trade_no\":\"" + out_trade_no + "\","+ "\"total_amount\":" + totalAmount + ","+ "\"subject\":\"" + subject + "\","+ "\"product_code\":\"FAST_INSTANT_TRADE_PAY\"}");//请求String form = "";try {form = alipayClient.pageExecute(alipayRequest).getBody(); //调用SDK生成表单} catch (AlipayApiException e) {e.printStackTrace();}response.setContentType("text/html;charset=" + AlipayConfig.CHARSET);response.getWriter().write(form);//直接将完整的表单html输出到页面response.getWriter().flush();response.getWriter().close();return form;}/*** 同步跳转** @param request* @throws Exception*/@ResponseBody@RequestMapping("/returnUrl")public void returnUrl(HttpServletRequest request,HttpServletResponse response) throws Exception {ModelAndView mav = new ModelAndView();// 获取支付宝GET过来反馈信息(官方固定代码)Map<String, String> params = new HashMap<String, String>();Map<String, String[]> requestParams = request.getParameterMap();for (Iterator<String> iter = requestParams.keySet().iterator(); iter.hasNext();) {String name = (String) iter.next();String[] values = (String[]) requestParams.get(name);String valueStr = "";for (int i = 0; i < values.length; i++) {valueStr = (i == values.length - 1) ? valueStr + values[i] : valueStr + values[i] + ",";}params.put(name, valueStr);}boolean signVerified = AlipaySignature.rsaCheckV1(params, AlipayConfig.ALIPAY_PUBLIC_KEY, AlipayConfig.CHARSET, AlipayConfig.sign_type); // 调用SDK验证签名// 返回界面if (signVerified) {System.out.println("前往支付成功页面");response.sendRedirect("/index.do");} else {System.out.println("前往支付失败页面");response.setContentType("text/html;charset=utf-8");PrintWriter printWriter = response.getWriter();HttpSession session=request.getSession();System.out.println(session.getAttribute("lastorder"));Order order=(Order)session.getAttribute("lastorder");service.delSer(order.getOrderid());printWriter.print("<script>alert('支付失败!!!');window.location='/myorder.do';</script>");}}/*** 支付宝服务器异步通知** @param request* @throws Exception*/@ResponseBody@RequestMapping("/notifyUrl")public void notifyUrl(HttpServletRequest request) throws Exception {// 获取支付宝GET过来反馈信息Map<String, String> params = new HashMap<String, String>();Map<String, String[]> requestParams = request.getParameterMap();for (Iterator<String> iter = requestParams.keySet().iterator(); iter.hasNext();) {String name = (String) iter.next();String[] values = (String[]) requestParams.get(name);String valueStr = "";for (int i = 0; i < values.length; i++) {valueStr = (i == values.length - 1) ? valueStr + values[i] : valueStr + values[i] + ",";}params.put(name, valueStr);}boolean signVerified = AlipaySignature.rsaCheckV1(params, AlipayConfig.ALIPAY_PUBLIC_KEY, AlipayConfig.CHARSET, AlipayConfig.sign_type); // 调用SDK验证签名if (signVerified) { // 验证成功 更新订单信息System.out.println("异步通知成功");// 商户订单号String out_trade_no = request.getParameter("out_trade_no");// 交易状态String trade_status = request.getParameter("trade_status");// 修改数据库} else {System.out.println("异步通知失败");}}
}
注意:该项目只展示部分功能,如需了解,评论区咨询即可。
希望和大家多多交流!!
源码项目、定制开发、代码讲解、答辩辅导
计算机课程设计-ssm在线点餐系统(沙箱支付)-javaweb外卖系统相关推荐
- 计算机课程设计ssm医药管理信息系统【代码讲解+安装调试+文档指导】
- 食堂外卖java源代码,基于jsp的饭堂外卖系统-JavaEE实现饭堂外卖系统 - java项目源码...
基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的饭堂外卖系统, 该项目可用各类java课程设计大作业中, 饭堂外卖系统的系统架构分为前后台两部分, 最终实现在线上 ...
- 计算机课程设计-基于ssm+vue的物资管理系统(前后端分离)-物资出库入库管理系统java代码
计算机课程设计-基于ssm+vue的物资管理系统(前后端分离)-物资出库入库管理系统java代码 注意:该项目只展示部分功能,如需了解,评论区咨询即可. 作者:IT跃迁谷 1.开发环境 开发语言:Ja ...
- 山东大学软件学院高级语言课程设计JAVA课程设计-学生在线考试系统平台
说明:blog 不全面而且也不是上交实验报告的最终版本(是自己实验过程中简单记录的笔记),完整内容(含代码+实验报告)可以通过(山东大学软件学院高级语言课程设计JAVA课程设计-学生在线考试系统平台) ...
- 计算机毕业设计、计算机课程设计怎么做?计算机设计1900套来帮你!
计算机毕业设计.计算机课程设计怎么做?计算机设计1900套来帮你! 人生做什么事都有套路,大学毕业设计.课程设计通常比较简单,大多数都是找个项目做参考,有的人随便抄一抄糊弄一下,只要查重,格式别出错就 ...
- 计算机课程设计参考文献,计算机课程设计专著参考文献 计算机课程设计论文参考文献哪里找...
[100个]关于计算机课程设计专著参考文献汇总,作为大学生的毕业生应该明白了计算机课程设计论文参考文献哪里找,收集好参考文献后的计算机课程设计论文写作起来会更轻松! 一.计算机课程设计论文参考文献范文 ...
- 计算机课程设计之图书借阅小程序-图书馆借阅管理小程序代码-校园图书馆借书还书小程序
计算机课程设计之图书借阅小程序-图书馆借阅管理小程序代码-校园图书馆借书还书小程序 注意:该项目只展示部分功能,如需了解,评论区咨询即可. 1.开发环境 开发语言:Java 框架:SSM(Spring ...
- 计算机课程设计jsp+servlet社区居民健康档案管理系统【安装调试+代码讲解+文档报告】
大家好!我是一名Java开发攻城狮,喜欢研究代码,有不懂的地方可以咨询.源码.定制化开发.代码讲解.文档撰写.ppt制作都可以. ❤️技术选型:spring.springmvc.mybatis.mav ...
- 计算机检测与维修课程设计总结,(计算机课程设计总结报告.ppt
(计算机课程设计总结报告 首先,我初步了解了C#语言的编程方法和原则,并学会了编写C#程序.其次,使我更深层次的理解到C#语言是一种面向对象的语言,具有可视化编程的特点且代码具有可移植等特点.本次课程 ...
最新文章
- 阿里代码规范插件 中文使用手册 FOR Eclipse
- dataTable.NET的column index的不同定義
- Mysql无法添加环境变量解决办法
- WriteFile写UNICODE字符串 TxT显示乱码
- linux boot菜单列表,Bootstrap 下拉菜单(Dropdowns)简介
- 贾跃亭“站台”!乐视高调宣布回归:60余款新品发布,还将发布超级手机
- H3C设备运行状态查询常用命令
- Matter-JS Bodies 内置刚体模块
- 阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第2节 Stream流式思想概述_1_使用传统的方式,遍历集合,对集合进行过滤...
- drool 7.x 属性 : no-loop
- 维纳滤波python 函数_图像维纳滤波实现(1)
- photoshop cs4 注册
- Makefile代码解释
- ​​​​​​​​​​​勾股数的规律
- 爬取今日头条街拍美图
- 分享这些值得收藏的软件,千万别错过
- 将PSD文件导出图层
- 看完这篇,黑苹果驱动VoodooI2C编译打包所有错误全搞定
- 国内的windows硬件检测软件算是很牛逼的吧!!!?
- 【SpringBoot】最新版2019Spring Boot配置解析,源码解析(速成SpringBoot)——学习笔记版【2】