SpringBoot集成支付宝沙箱支付

虽然这里用的spring boot 但是我用的还是jsp文件,具体如何支持jsp文件可以参考我这篇文章 

https://blog.csdn.net/qq_40312707/article/details/89076725

先是开发前准备:

1.支付宝有现成的例子可以下载,根据自己语言下载即可

demo下载地址:https://docs.open.alipay.com/270/106291

2.免费注册蚂蚁金服开发者账号 注册完在可开发中心上选择研发服务,进去会得到appid等一些信息,这些信息需要在下面配置文件填写的

注册地址:https://open.alipay.com 

SpringBoot集成支付宝沙箱支付_第1张图片

3.RSA2密钥生成 点击生成方法 根据他的提示一步一步操作 最后生成的密钥有两种,一个是公钥,一个叫私钥,在应用公钥上填写生成的公钥,填写后可以查看支付宝公钥,这个支付宝公钥下面配置文件需要填写

现在是开发步骤:

1.导入依赖


            com.alipay.sdk
            alipay-sdk-java
            3.0.0

2.配置文件

下载好的demo里有一个AlipayConfig.java文件,复制进你的项目中

@Component
public class AlipayConfig {
	
//↓↓↓↓↓↓↓↓↓↓请在这里配置您的基本信息↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

	// 应用ID,您的APPID,收款账号既是您的APPID对应支付宝账号 按照我文章图上的信息填写
	public static String app_id = "";
	 
	// 商户私钥,您的PKCS8格式RSA2私钥  刚刚生成的私钥直接复制填写
    public static String merchant_private_key = "";
	
	// 支付宝公钥,对应APPID下的支付宝公钥。 按照我文章图上的信息填写支付宝公钥,别填成商户公钥
    public static String alipay_public_key = "";

	// 服务器异步通知页面路径  需http://格式的完整路径,不能加?id=123这类自定义参数,其实就是你的一个支付完成后返回的页面URL
	public static String notify_url = "http://localhost:9999/alipay/notifyurl";

	// 页面跳转同步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,其实就是你的一个支付完成后返回的页面URL
	public static String return_url = "http://localhost:9999/orders/addOrders";

	// 签名方式
	public static String sign_type = "RSA2";
	
	// 字符编码格式
	public static String charset = "utf-8";
	
	// 支付宝网关
	public static String gatewayUrl = "https://openapi.alipaydev.com/gateway.do";
	
	// 支付宝网关
	public static String log_path = "C:\\";


//↑↑↑↑↑↑↑↑↑↑请在这里配置您的基本信息↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

    /** 
     * 写日志,方便测试(看网站需求,也可以改成把记录存入数据库)
     * @param sWord 要写入日志里的文本内容
     */
    public static void logResult(String sWord) {
        FileWriter writer = null;
        try {
            writer = new FileWriter(log_path + "alipay_log_" + System.currentTimeMillis()+".txt");
            writer.write(sWord);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (writer != null) {
                try {
                    writer.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

3.Controller 给jsp文件配置Controller

@Controller
@RequestMapping("alipay")
public class AliPayController{
	
	//支付宝支付主页
	@RequestMapping("index")
	public String alipayIndex(HttpServletRequest request,HttpSession session,Orders orders,String orderName) {
		System.out.println("订单数据-"+orders);
		System.out.println("订单名称-"+orderName);
		request.setAttribute("orderPay", orders);
		request.setAttribute("orderName", orderName);
		session.setAttribute("orders", orders);
		return "/alipay/alipayindex";
	}
	
	@RequestMapping("pay")
	public String pay(){
		return "/alipay/alipay-pay";
	}
	
	@RequestMapping("notifyurl")
	public String notifyurl(){
		return "/alipay/notify_url";
	}
	
}

4.jsp 我用的是自己修改后的jsp文件

 其实刚刚下载的demo解压后 配置完AlipayConfig.java这个配置文件就可以直接在服务器上运行demo的jsp文件,我是自己修改到自己的项目 想简单运行项目的同学 只要开发步骤的前两部即可直接运行体验

最后说一句如果是不会maven和spring boot同学 依赖是三个jar包 在demo里web-inf下lib文件夹里有这个三个jar包 只要按照我的要求配好AlipayConfig.java文件,直接就可以运行demo的jsp文件了,还是比较简单的。

还不懂得可以私信我。后面这篇文章我会写上我期间遇到的问题,你们可以参考。

https://blog.csdn.net/qq_40312707/article/details/89815602

你可能感兴趣的:(支付宝支付,spring,boot)