java微信支付v3系列——4.创建订单的封装及使用
Java微信支付V3系列——4.创建订单的封装及使用
经过了微信支付之创建订单准备操作的准备操作,我们就能够非常快速地开发出各种支付类型的创建订单接口。商户Native支付下单接口,微信后台系统返回链接参数code_url,商户后台系统将code_url值生成二维码图片,并在用户扫描该二维码后,跳转到微信支付页面进行支付。
4.1 创建订单的封装
首先,我们需要创建一个订单的封装类,用于存储订单相关信息。我们可以使用Java中的Bean类来实现这一点。
```javapublic class Order {
private String tradeNo; // 订单号 private String tradeType; // 支付类型(例如微信支付)
private String amount; //金额 private String codeUrl; // 微信后台系统返回的链接参数 public String getTradeNo() {
return tradeNo;
}
public void setTradeNo(String tradeNo) {
this.tradeNo = tradeNo;
}
public String getTradeType() {
return tradeType;
}
public void setTradeType(String tradeType) {
this.tradeType = tradeType;
}
public String getAmount() {
return amount;
}
public void setAmount(String amount) {
this.amount = amount;
}
public String getCodeUrl() {
return codeUrl;
}
public void setCodeUrl(String codeUrl) {
this.codeUrl = codeUrl;
}
}
```
4.2 创建订单的使用
接下来,我们需要创建一个订单的使用类,用于调用微信支付API进行创建订单操作。我们可以使用Java中的HttpURLConnection类来实现这一点。
```javapublic class OrderService {
public static String createOrder(Order order) throws Exception {
// 设置请求参数 Map
params.put("trade_no", order.getTradeNo());
params.put("trade_type", order.getTradeType());
params.put("amount", order.getAmount());
// 发起POST请求 URL url = new URL(" HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setRequestBody(URLEncoder.encode(params, "UTF-8"));
// 获取响应结果 int responseCode = connection.getResponseCode();
if (responseCode ==200) {
String result = connection.getResponseBodyAsString();
return result;
} else {
throw new Exception("创建订单失败");
}
}
}
```
4.3 使用示例
最后,我们可以使用以下示例代码来演示如何使用OrderService类进行创建订单操作。
```javapublic class Main {
public static void main(String[] args) throws Exception {
// 创建订单实体 Order order = new Order();
order.setTradeNo("ORDER_001");
order.setTradeType("WECHAT_PAY");
order.setAmount("10.00");
// 调用创建订单方法 String result = OrderService.createOrder(order);
System.out.println(result);
}
}
```
通过以上示例代码,我们可以看到如何使用OrderService类进行创建订单操作,包括设置请求参数、发起POST请求、获取响应结果等步骤。