java 整合支付寶支付 的一些操作

1.準備步驟

相關工具

1、內網穿透工具 natapp (用戶支付結果通知異步回調)
2、AlipayDevelopmentAssistant 阿里支付簽名工具
3、支付寶沙箱客戶端 支付寶支付測試使用

支付寶-當面付

阿里支付寶DEMO下載:https://docs.open.alipay.com/399/106844/,支付寶支持豐富的支付方式,這裏我們選擇使用當面付-支持二維碼&條形碼的支付,這是目前的主流。
  • 當面付流程
1、獲取二維碼
2、掃碼支付
3、等待支付寶回調
4、修改訂單狀態
5、定期對賬

在這裏插入圖片描述

DEMO文檔結構目錄
-TradePayDemo - 支付寶當面付DEMO
-TradePaySDK - 支付寶SDK
-readme.txt - 文檔結構目錄說明
-當面付調用流程說明文檔(java).docx

相關鏈接配置

SDK-maven依賴地址說明:https://docs.open.alipay.com/54/103419/

當面付產品功能說明:https://docs.open.alipay.com/194
當面付DEMO:https://docs.open.alipay.com/54/104506/

沙箱環境說明:https://docs.open.alipay.com/200/105311/

支付加密簽名工具:https://docs.open.alipay.com/291/
	             https://opendocs.alipay.com/open/291/105971#LDsXr

簽名參數說明:https://docs.open.alipay.com/204/105465
支付寶主動異步通知說明:https://docs.open.alipay.com/270/105902/

2.程序編寫

pom文件配置

<!-- 支付寶支付 -->
		<dependency>
			<groupId>com.alipay.sdk</groupId>
			<artifactId>alipay-sdk-java</artifactId>
			<version>3.3.87.ALL</version>
			<exclusions>
				<exclusion>
					<artifactId>commons-logging</artifactId>
					<groupId>commons-logging</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>commons-lang</groupId>
			<artifactId>commons-lang</artifactId>
			<version>2.6</version>
		</dependency>
		<dependency>
			<groupId>commons-configuration</groupId>
			<artifactId>commons-configuration</artifactId>
			<version>1.10</version>
			<exclusions>
				<exclusion>
					<artifactId>commons-logging</artifactId>
					<groupId>commons-logging</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>commons-codec</groupId>
			<artifactId>commons-codec</artifactId>
			<version>1.11</version>
		</dependency>
		<dependency>
			<groupId>com.google.zxing</groupId>
			<artifactId>core</artifactId>
			<version>3.2.1</version>
		</dependency>
		<dependency>
			<groupId>org.hamcrest</groupId>
			<artifactId>hamcrest-core</artifactId>
			<version>1.3</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.google.code.gson</groupId>
			<artifactId>gson</artifactId>
			<version>2.8.5</version>
		</dependency>
		<!-- 支付寶依賴結束 -->

靜態資源訪問虛擬路徑

@Configuration
public class ResourceConfig implements WebMvcConfigurer {
    @Autowired
    private QrCodeProp qrCodeProp;

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {

        String os = System.getProperty("os.name");
        if(os.toLowerCase().startsWith("win")){ //windows系統
            /** QrCode圖片存儲路徑 */
            registry.addResourceHandler(qrCodeProp.getHttpBasePath()
                    +"/**")
                    .addResourceLocations("file:" + qrCodeProp.getStorePath() + "/");
        }else{ //linux或者mac

        }
    }

}

源碼地址

https://gitee.com/h455952294_admin/alipay_payment.git

測試用例

  • 1.生成訂單
//url地址
http://localhost:8088/order/qrCode
// 請求參數
{
  "payAmount":299.9,
  "itemList":[
    {
      "productSn":"2920129293",
      "productName":"華爲P40 Pro手機殼",
      "productPrice":299.9,
      "productQuantity":9
    }
  ]
}
// 響應數據

  • 支付回調
http://localhost:8088/order/paySuccess
  • 查詢訂單狀態
http://localhost:8088/order/queryPayStatus?orderSn=15855452823901363487

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章