此处为运行结果,可以得到预付订单id,然后调起微信支付
运行得到的结果eclipse-java工程,jar包齐全,下载既可运行。下载链接
微信统一下单接口调用
public static Map<String, String> weixinPrePay(String sn,int totalAmount,
String description, InetAddress request) {
SortedMap<String, Object> parameterMap = new TreeMap<String, Object>();
parameterMap.put("appid", PayCommonUtil.APPID);
parameterMap.put("mch_id", PayCommonUtil.MCH_ID);
parameterMap.put("nonce_str", PayCommonUtil.getRandomString(32));
parameterMap.put("body", "圣菲花园-充值");
parameterMap.put("out_trade_no", sn);
parameterMap.put("fee_type", "CNY");
parameterMap.put("total_fee", totalAmount+"");
System.out.println("jiner2");
parameterMap.put("spbill_create_ip", request.getHostAddress());
parameterMap.put("notify_url", "http://xxx.com");
parameterMap.put("trade_type", "APP");
String sign = PayCommonUtil.createSign("UTF-8", parameterMap,API_KEY);
parameterMap.put("sign", sign);
String requestXML = PayCommonUtil.getRequestXml(parameterMap);
System.out.println(requestXML);
String result = PayCommonUtil.httpsRequest(
"https://api.mch.weixin.qq.com/pay/unifiedorder", "POST",
requestXML);
System.out.println(result);
Map<String, String> map = null;
try {
map = PayCommonUtil.doXMLParse(result);
} catch (JDOMException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return map;
}