簡單支付寶支付搭建


首先支付寶網站登錄,信息認證即可

https://open.alipay.com/platform/appDaily.htm?tab=account

 

 

 

 

 

 

 

 

 

 

 

 

 

依賴

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

兩個實體類

public class AlibabapayGateWayUtils {


    /**
     *
     * @param orderID 訂單號
     * @param total_amount 支付金額
     * @param subject  商品名稱
     * @param body 商品描述
     * @return
     */
    public static String createOrder(String orderID,String total_amount,String subject,String body) throws AlipayApiException {
        Map<String,String> map = new HashMap<>();
        map.put("out_trade_no",orderID);
        map.put("trade_no",orderID);
        map.put("total_amount",total_amount);
        map.put("subject",subject);
        // 該筆訂單允許的最晚付款時間,逾期將關閉交易。取值范圍:1m~15d。m-分鍾,h-小時,d-天,1c-當天(1c-當天的情況下,無論交易何時創建,都在0點關閉)。 該參數數值不接受小數點, 如 1.5h,可轉換為 90m。
        String timeout_express = "1c";
        map.put("timeout_express",timeout_express);
        map.put("product_code","FAST_INSTANT_TRADE_PAY");
        AlipayClient alipayClient = getAlipayClient();

        //設置請求參數
        AlipayTradePagePayRequest alipayRequest = new AlipayTradePagePayRequest();
        alipayRequest.setReturnUrl(AlipayConfig.return_url);
        alipayRequest.setNotifyUrl(AlipayConfig.notify_url);
        alipayRequest.setBizContent(JSON.toJSONString(map));
        String result = alipayClient.pageExecute(alipayRequest).getBody();
        return  result;
    }

    private static AlipayClient getAlipayClient() {
        return new DefaultAlipayClient(AlipayConfig.gatewayUrl, AlipayConfig.app_id, AlipayConfig.merchant_private_key, "json", AlipayConfig.charset, AlipayConfig.alipay_public_key, AlipayConfig.sign_type);
    }


    /**
     * 查詢訂單
     * @param map
     * @return
     * @throws AlipayApiException
     */
    public AlipayTradeQueryResponse queryOrder(Map<String, String> map) throws AlipayApiException {

        AlipayClient alipayClient = getAlipayClient();
        //構造API請求
        AlipayTradeQueryRequest request = new AlipayTradeQueryRequest();
        request.setBizContent(JSON.toJSONString(map));//訂單允許的最晚付款時間
        //發送請求
        AlipayTradeQueryResponse response = alipayClient.certificateExecute(request);
        System.out.println("請求支付寶查詢接口返回的結果為:"+response.getBody());
        return response;


    }
}
public class AlipayConfig {

    //APPID
    public static String app_id = "2021000118658355";
    //私鑰 
    public static String merchant_private_key = "";
    //公鑰
    public static String alipay_public_key = "";
    //通知地址
    public static String notify_url = "http://localhost/list";
    //返回地址
    public static String return_url = "http://localhost/list";
    //信號類型
    public static String sign_type = "RSA2";
    //編碼格式
    public static String charset = "utf-8";
    //網關地址
    public static String gatewayUrl = "";
}

 

主要方法

//支付
    @RequestMapping(value = "addOrder", produces = "text/html; charset=UTF-8")
    @ResponseBody
    public String goPay(Torder torder) throws AlipayApiException {
        String order = AlibabapayGateWayUtils.createOrder("訂單號", "總金額"   ,"商品名稱", "描述");
        return order;
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM