Java基础入门day66

day66

内网穿透

NatApp

NATAPP-内网穿透 基于ngrok的国内高速内网映射工具

开启您的内网穿透之旅

下载安装后,注册一个账号,可以免费使用内网穿透,不稳定,也可以自行选择收费版本

在下载好app的同级目录,放置一个config.ini文件,作为该程序的配置文件,自行加载,双击运行即可得到一个内网穿透后的地址,默认端口是8080

支付宝支付

使用支付宝进行支付

支付宝开放平台 (alipay.com)

在该官网上打开控制台,找到沙箱

沙箱应用 - 开放平台 (alipay.com)

密钥工具下载 - 支付宝文档中心 (alipay.com)

分别下载工具,生成秘钥,到最后的匹配成功

package com.saas.util;
​
import com.alibaba.fastjson.JSONObject;
import com.alipay.api.AlipayApiException;
import com.alipay.api.AlipayClient;
import com.alipay.api.DefaultAlipayClient;
import com.alipay.api.request.AlipayTradePagePayRequest;
import com.saas.entity.Order;
​
public class AlipayTools {
 public static String pay(Order order){
​
     //准备接入的配置
     String appId = "自己的appid";
//        String serverUrl = "https://openapi.alipaydev.com/gateway.do";        //  早期版本的支付宝支付的url
     String serverUrl = "https://openapi-sandbox.dl.alipaydev.com/gateway.do";  //  最新的支付宝支付url
     String rsa2 = "RSA2";
     String alipayPublicKey = "自己的支付宝公钥";
     String charset = "UTF-8";
     String privateKey = "私钥";
     String json = "json";
     AlipayClient alipayClient = new DefaultAlipayClient(serverUrl, appId, privateKey, json, charset, alipayPublicKey, rsa2);
     //request对象
     AlipayTradePagePayRequest request = new AlipayTradePagePayRequest();
     //商家的post请求接口
     request.setNotifyUrl("http://hda4zd.natappfree.cc/PaySuccess");//自行设置的回调地址--post请求
     //商家的get请求接口
     request.setReturnUrl("http://hda4zd.natappfree.cc/PaySuccess");//自行设置的回调地址--get请求
​
     JSONObject bizContent = new JSONObject();
     bizContent.put("out_trade_no", order.getOid());
     bizContent.put("total_amount", order.getAmount());
     bizContent.put("subject", order.getOdesc());
     bizContent.put("body", order.getBak());
     bizContent.put("product_code", "FAST_INSTANT_TRADE_PAY");
     request.setBizContent(bizContent.toJSONString());
     String form= "" ;
     try  {
         form = alipayClient.pageExecute(request).getBody();  //调用SDK生成表单
     }  catch  (AlipayApiException e) {
         e.printStackTrace();
     }
​
     return form;
 }
}
package com.saas.day65;
​
​
import com.saas.entity.Order;
import com.saas.util.AlipayTools;
​
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.UUID;
​
@WebServlet("/PayServlet")
public class PayServlet extends HttpServlet {
​
 @Override
 protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
     resp.setContentType("text/html;charset=utf-8");
​
     Order o = new Order();
​
     o.setOid(UUID.randomUUID().toString());
     o.setAmount(9.9);
     o.setOdesc("测试订单");
     o.setUid(1);
     o.setBak("测试订单");
​
     String pay = AlipayTools.pay(o);
​
​
     resp.getWriter().write(pay);
 }
}
package com.saas.day65;
​
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
​
@WebServlet("/PaySuccess")
public class PaySuccessServlet extends HttpServlet {
​
 @Override
 protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
     resp.sendRedirect("success.jsp");
 }
}
  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值