資源簡介
內(nèi)含創(chuàng)建支付寶交易對象、創(chuàng)建微信交易對象、再次簽名,支付、創(chuàng)建sign簽名等方法
代碼片段和文件信息
package?com.loveFly.utils;
import?java.io.BufferedReader;
import?java.io.BufferedWriter;
import?java.io.File;
import?java.io.FileNotFoundException;
import?java.io.FileOutputStream;
import?java.io.FileWriter;
import?java.io.IOException;
import?java.io.InputStream;
import?java.io.InputStreamReader;
import?java.io.OutputStream;
import?java.io.PrintWriter;
import?java.io.StringWriter;
import?java.io.UnsupportedEncodingException;
import?java.net.ConnectException;
import?java.net.URL;
import?java.text.SimpleDateFormat;
import?java.util.Date;
import?java.util.Iterator;
import?java.util.Map;
import?java.util.Random;
import?java.util.Set;
import?java.util.SortedMap;
import?java.util.TreeMap;
import?javax.net.ssl.HttpsURLConnection;
import?javax.net.ssl.SSLContext;
import?javax.net.ssl.SSLSocketFactory;
import?javax.net.ssl.TrustManager;
import?javax.servlet.http.HttpServletRequest;
import?com.alibaba.fastjson.JSONobject;
import?com.alipay.api.AlipayClient;
import?com.alipay.api.DefaultAlipayClient;
public?class?PayCommonUtil
{
public?static?final?String?TIME?=?“yyyyMMddHHmmss“;
/**
?*?創(chuàng)建支付寶交易對象
?*/
public?static?AlipayClient?getAliClient()
{
AlipayClient?alipayClient?=?new?DefaultAlipayClient(PropertyUtil.getInstance().getProperty(“AliPay.payURL“)
PropertyUtil.getInstance().getProperty(“AliPay.appId“)
PropertyUtil.getInstance().getProperty(“AliPay.privateKey“)?“json“?“utf-8“
PropertyUtil.getInstance().getProperty(“AliPay.publicKey“)?“RSA2“);
return?alipayClient;
}
/**
?*?創(chuàng)建微信交易對象
?*/
public?static?SortedMapject?object>?getWXPrePayID()
{
SortedMapject?object>?parameters?=?new?TreeMapject?object>();
parameters.put(“appid“?PropertyUtil.getInstance().getProperty(“WxPay.appid“));
parameters.put(“mch_id“?PropertyUtil.getInstance().getProperty(“WxPay.mchid“));
parameters.put(“nonce_str“?PayCommonUtil.CreateNoncestr());
parameters.put(“fee_type“?“CNY“);
parameters.put(“notify_url“?PropertyUtil.getInstance().getProperty(“WxPay.notifyurl“));
parameters.put(“trade_type“?“APP“);
return?parameters;
}
/**
?*?再次簽名,支付
?*/
public?static?SortedMapject?object>?startWXPay(String?result)
{
try
{
Map?map?=?xmlUtil.doxmlParse(result);
SortedMapject?object>?parameterMap?=?new?TreeMapject?object>();
parameterMap.put(“appid“?PropertyUtil.getInstance().getProperty(“WxPay.appid“));
parameterMap.put(“partnerid“?PropertyUtil.getInstance().getProperty(“WxPay.mchid“));
parameterMap.put(“prepayid“?map.get(“prepay_id“));
parameterMap.put(“package“?“Sign=WXPay“);
parameterMap.put(“noncestr“?PayCommonUtil.CreateNoncestr());
//?本來生成的時間戳是13位,但是ios必須是10位,所以截取了一下
parameterMap.put(“timestamp“
Long.parseLong(String.valueOf(System.currentTimeMillis()).toString().substring(0?10)));
String?sign?=?PayCommonUtil.createSign(“UTF-8“?parameterMap);
parameterMap.put
- 上一篇:Android精美時鐘代碼
- 下一篇:MQ工具類java
評論
共有 條評論