欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 社会 > Java基础入门day66

Java基础入门day66

2025/9/14 2:00:12 来源:https://blog.csdn.net/zpz2001/article/details/139834311  浏览:    关键词: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";        //  早期版本的支付宝支付的urlString serverUrl = "https://openapi-sandbox.dl.alipaydev.com/gateway.do";  //  最新的支付宝支付urlString 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 {
​@Overrideprotected 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 {
​@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {resp.sendRedirect("success.jsp");}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com