大家好,我是猿猴小冷,今天给大家分享一下支付宝支付的案例
一、首先你要装备一下这些支付宝支付工具
二、使用沙箱环境开发(创建自己的沙箱环境)
三、导入支付宝支付的依赖
<!--支付宝支付-->
<!-- https://mvnrepository.com/artifact/com.alipay.sdk/alipay-sdk-java -->
<dependency>
<groupId>com.alipay.sdk</groupId>
<artifactId>alipay-sdk-java</artifactId>
<version>4.10.111.ALL</version>
</dependency>
四、拿到alipay的接口
@Api(tags = "支付宝支付管理")
@RestController()
@RequestMapping("/aliPay")
public class AlipayController {
@ApiModelProperty("应用ID")
private final static String APP_ID="2021000118601884";
@ApiModelProperty("应用私钥")
private final static String APP_PRIVATE_KEY="MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCgzf3y4QQLjYjhr8gyyvn9WUq6BoDsGeVhW2gVIis7n8LC1v9RaGoH+04Xd/nlPfl7c9k8AF02r+KhjZ3Jb+CbeXKMZ9hI351SAqSV8rAq5vU2mVVirP+Ghfqg+D5sll7/Q3oC6VAmZY7SiyiqRpis7i/FiFz2UZoOS8zWv+NWfDrih/PsCgJIWPI0zbUG8RJFoosuxHK9oieaKlgZthSUQUUWkeFfUM0d7etjHa8HJH1ljf8bYWEBc2WiZL3VpvA81vk5foWllWZo3Q13V0ZCsRJODNjWkLfUQVZnZLyhvD4zm6YFGA6k/2uMQpgA8DROKplIz0ZqCYQ12dZqbV+PAgMBAAECggEACwMQSPmv1Tq0DQCErTXJONhMjcC0Q3bihnBECG52l3axV7ZxdZm46SMEjgbhThmYZCPi1IER4RTaaEXScGEA+KSwe30BCryFgYA81SfxeH6ofDyz5DYEqamzKCLX44fIqaJtUJW5r2d1CGYPOtnqyqzlCJn2A8hCzIfUV0B8yQdMW2A4nnioVLRzor9VjO5mH2vHy5N4++arcdXs6OLKjNIOmydOqWQrQv+5vGSKFDOsQulFPSITb3Swsw2z2+77lo1pFD8hZQuHtmu4M8FMOmiHeiPqfAtdAY3xABKBdRd8zvzLX1WvpZMqCuwkADdd9sj37SiNW5bCuFg5kyJ6AQKBgQD/KJVZ+aH3nLQQX2CkQpnpKK4VsOuZ9YWmJcKNmY47fmPDyQS9kR1++JcEaVI0wt5Ujnga+Hnj+2oAEv4sssOEwE4Xu3vkjpStQBTeRFU9w3FOfsXMxXPudqY1mE7Gku+DgLND2KxeZv8Wg/oMMsACuTSEt0CY3wRDGlIvJb8rYQKBgQChVcAtalkNGkJLv1pWzFQ/mPeyrR5npegQtn6t0dr9KE/ZE7d5jics4aHtISMuBIQxl1cjM18DjY8Xiu2zuVCCcYaexhkftfr52LqStW6j5L0lxJakBr1ap1zr/PmU4gaTFdbojgO0KcM0vgFrnStHInvbomoHNBVSf8EKjl/g7wKBgFAw/AdkGlBM0paWszPMrryFiXjNuq4PaOqX0XZZPUdbaJVetvuxANkn3aaIR0rHt8JRaFPppb1OBblyPqnjoOk22xRAWyaw3O86RZS5WyTnKNQnqZi6sb3PUltju9ZS1a25pB19mmas7hywa8SrqobwmB3hzg59gMRqIEwrC9LhAoGAIDlicy/EratLBponzyJsyW8iOlv9sLIgkgYBc3JxDROaLz+S7AKKrJo8n4J45l4ckVMrImrGVY1WwVsMc1NWU1edjeT/a6gLgw/Y5Ci8+ptbdEm51PVLqOm406Hpr+Udbw9zp2uGLdwRk11IJ1hzJngqyQm9p8atY5cE1bjuSZ0CgYEA23XKMI0wrYr54/dYj70i10dndZxv/nr9rddiuHYtNxNedYj7ltyyuYZwf+wz9cIfbVEwBbNrKNn1Aq8+qAxAutjK7FUVc7WMc24CSQQU0IeSVMkccUOtn5DacbNsUxC50NOJCvJEY1YrJpFWHA6jzNL1ltZareTi8zaVPLlK4uI=";
@ApiModelProperty("编码格式")
private final static String CHARSET="UTF-8";
@ApiModelProperty("支付宝公钥")
private final static String ALIPAY_PUBLIC_KEY="MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoM398uEEC42I4a/IMsr5/VlKugaA7BnlYVtoFSIrO5/Cwtb/UWhqB/tOF3f55T35e3PZPABdNq/ioY2dyW/gm3lyjGfYSN+dUgKklfKwKub1NplVYqz/hoX6oPg+bJZe/0N6AulQJmWO0osoqkaYrO4vxYhc9lGaDkvM1r/jVnw64ofz7AoCSFjyNM21BvESRaKLLsRyvaInmipYGbYUlEFFFpHhX1DNHe3rYx2vByR9ZY3/G2FhAXNlomS91abwPNb5OX6FpZVmaN0Nd1dGQrESTgzY1pC31EFWZ2S8obw+M5umBRgOpP9rjEKYAPA0TiqZSM9GagmENdnWam1fjwIDAQAB";
@ApiModelProperty("格式化")
private final static String FORMAT="json";
@ApiModelProperty("沙箱网关")
private final static String GATE_WAY="https://openapi.alipaydev.com/gateway.do";
@ApiModelProperty("签名类型")
private final static String SIGN_TYPE="RSA2";
/**
* 获取订单信息
*/
@GetMapping("/getOrderInfo")
public String getOrderInfo(){
//实例化客户端
AlipayClient alipayClient = new DefaultAlipayClient(GATE_WAY, APP_ID, APP_PRIVATE_KEY, FORMAT, CHARSET, ALIPAY_PUBLIC_KEY, SIGN_TYPE);
//实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称:alipay.trade.app.pay
AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest();
//SDK已经封装掉了公共参数,这里只需要传入业务参数。以下方法为sdk的model入参方式(model和biz_content同时存在的情况下取biz_content)。
AlipayTradeAppPayModel model = new AlipayTradeAppPayModel();
model.setBody("订单支付小测试");
model.setSubject("App支付测试Java");
model.setOutTradeNo("20200828000082342");
model.setTimeoutExpress("30m");
model.setTotalAmount("1000.00");
model.setProductCode("QUICK_MSECURITY_PAY");
request.setBizModel(model);
request.setNotifyUrl("http://338qd50434.qicp.vip/alipay/notity");
try {
//这里和普通的接口调用不同,使用的是sdkExecute
AlipayTradeAppPayResponse response = alipayClient.sdkExecute(request);
System.out.println(response.getBody());//就是orderString 可以直接给客户端请求,无需再做处理。
return response.getBody();
} catch (AlipayApiException e) {
e.printStackTrace();
return null;
}
}
注:应用私钥需要使用到支付宝开放平台开发助手,(登录后生成)
支付宝公钥需要你拿到应用公钥去你的沙箱环境里生成
调用接口之后会生成一大串字符,然后你就去客户端测试APP测试(这一串字符记住不要回行)