什么是响应网站设计,想学管理从哪里开始,出入西安最新通知今天,怎样制作一个微信小程序这段时间把支付基本搞完了#xff0c;因为做的过程中遇到许多问题#xff0c;特地记录下来#xff0c;同时方便其他java coder#xff0c;废话少说#xff0c;下面开始。整体思路#xff1a;在后台#xff0c;根据参数创建支付宝客户端AlipayClient#xff0c;发送参数…这段时间把支付基本搞完了因为做的过程中遇到许多问题特地记录下来同时方便其他java coder废话少说下面开始。整体思路在后台根据参数创建支付宝客户端AlipayClient发送参数到支付宝支付宝直接返回一个表单我们只需要将表单输出到页面上后续支付宝异步通知比较重要是验签支付宝也提供的工具比较方便。微信支付java开发详细(jar包或maven的引入这里省略)1、申请支付宝支付这里大家自己研究网上很多教程。2、创建支付/*** 调用支付宝支付alipay.trade.page.pay* 商户系统请求支付宝接口alipay.trade.page.pay支付宝对商户请求参数进行校验而后重定向至用户登录页面。** param model* return* throws Exception*/public String createAlipay(Model model, String order_no, BigDecimal amount, Integer resource_trad_id, String trad_type, HttpServletResponse response) throws Exception {String form ;User user (User) model.asMap().get(user);//生成一笔预付订单流水String trad_no PC_ALIPAY OrderNoUtil.leadsNo();//订单流水号ShareUserTrad trad new ShareUserTrad();trad.setResourceTradId(resource_trad_id);trad.setUserId(user.getId());trad.setCreatedBy(user.getId());trad.setLastUpdBy(user.getId());trad.setOnlineOfflineFlag(0);//线上trad.setOrderNo(order_no);trad.setUserTradAmount(amount);trad.setTradMethod(3);//支付宝trad.setPayReceiveFlag(2);//支出trad.setSuccessFlag(0);//交易进行中trad.setTradType(1);//订单支付trad.setTradNo(trad_no);trad.setModifyNum(0);shareUserTradMapper.insertSelective(trad);try {//初始化客户端AlipayClient alipayClient new DefaultAlipayClient(Config.alipay_url, Config.alipay_appid, Config.alipay_app_private_key, Config.alipay_format, Config.alipay_charset, Config.alipay_app_public_key, Config.alipay_sign_type);//创建API对应的requestAlipayTradePagePayRequest alipayRequest new AlipayTradePagePayRequest();alipayRequest.setReturnUrl();//回退到订单列表页面alipayRequest.setNotifyUrl();//在公共参数中设置回跳和通知地址alipayRequest.setBizContent({ \out_trade_no\:\ trad_no \, \product_code\:\FAST_INSTANT_TRADE_PAY\, // \total_amount\: amount.toString() , \total_amount\:\0.01\, \subject\:\订单支付\, \body\:\订单 order_no 支付\, \passback_params\:\ order_no \ });//填充业务参数form alipayClient.pageExecute(alipayRequest).getBody(); //调用SDK生成表单} catch (Exception e) {e.printStackTrace();String sOut ;StackTraceElement[] trace e.getStackTrace();for (StackTraceElement s : trace) {sOut \tat s \r\n;}model.addAttribute(failMsg, sOut alipay_url: Config.alipay_url);return /pay/payFail;}response.setContentType(text/html;charset Config.alipay_charset);response.getWriter().write(form);//直接将完整的表单html输出到页面response.getWriter().flush();response.getWriter().close();return null;}本文来自电脑杂谈转载请注明本文网址http://www.pc-fly.com/a/sanxing/article-70423-1.html