Java对接支付宝网站扫码支付

本文详细介绍了如何使用Java对接支付宝网站扫码支付,包括申请账号、开通支付功能、创建应用、设置接口加签、开通签约支付能力,以及对接SDK的具体步骤。在对接过程中,需要注意接口加签方式的选择、证书的管理以及可能遇到的JDK版本冲突问题。
摘要由CSDN通过智能技术生成

一、对接流程概述


申请支付宝商户号 > 开通支付能力 >申请应用>开发设置>签约开通支付能力>集成SDK

二、流程详解


2.1 申请支付宝账号

在这里插入图片描述

2.2开通网站支付功能

在这里插入图片描述

在这里插入图片描述

2.3创建应用

在这里插入图片描述
在这里插入图片描述
创建完以后一般一天只能都能审核通过

2.4 开发设置

在这里插入图片描述

2.4.1 接口加签方式设置

详细信息可参考官网文档:官网地址
我这里选择的是在线生成证书的方式,补充响应的信息即可下载证书
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.5 开通签约支付能力

点击签约开通就可以了
在这里插入图片描述

2.6 对接SDK

终于到了激动人心撸代码的环节了

引入SDK

<dependency>
    <groupId>com.alipay.sdk</groupId>
    <artifactId>alipay-sdk-java</artifactId>
    <version>4.22.49.ALL</version>
</dependency>

创建配置类

package com.wn.config;

import com.alibaba.fastjson.JSONObject;
import com.alipay.api.AlipayApiException;
import com.alipay.api.AlipayClient;
import com.alipay.api.AlipayConfig;
import com.alipay.api.DefaultAlipayClient;
import com.alipay.api.internal.util.AlipaySignature;
import com.alipay.api.internal.util.StreamUtil;
import com.alipay.api.internal.util.codec.Base64;
import com.alipay.api.request.AlipayTradePagePayRequest;
import com.alipay.api.response.AlipayTradePagePayResponse;
import com.google.common.io.Resources;
import com.wn.utils.ResultUtils;
import lombok.extern.slf4j.Slf4j;
import org.omg.CORBA.PRIVATE_MEMBER;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;


import javax.annotation.PostConstruct;
import java.io.*;
import java.math.BigDecimal;
import java.net.URISyntaxException;
import java.security.KeyFactory;
import java.security.PublicKey;
import java.security.spec.X509EncodedKeySpec;
import java.util.Map;

/**
 * @Author: 大王
 * @Date: 2022/3/1 15:27
 */
@Slf4j
@Component
public class AliPayConfigSetting {
   
    @Value("${alipay.serverUrl}")
    private String serverUrl;
    @Value("${alipay.appId}")
    private String appId;
    @Value("${alipay.privateKey}")
    private String privateKey;
    @Value("${alipay.notify}")
    private String notify;

    public String getAppId() {
   
        return appId;
    }

    private AlipayClient alipayClient;

    private  AlipayConfig  alipayConfig;

    /**
     * 验签名
     * 这里需要使用阿里的支付证书来验证签名,注意使用的方法和证书是否正确,使用证书或者验证签名的方法不正确验证都会报错,需要特别注意
     * @param params
     * @return
     */
    public boolean 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值