JAVA微信企业付款如何使用证书、证书调用实例
1、下载微信商户证书,一般下载下来有4个文件用.p12的文件即可。名称例如下:apiclient_cert.p12

2、下载完证书之后保存到计算任何盘里,最好不要用中文路径

3、开发时调用证书主要是调用API在发送POST请求时使用。

4、代码如下:修改证书路径跟密码即可
KeyStore keyStore = KeyStore.getInstance("PKCS12");
FileInputStream instream = new FileInputStream(new File("证书路径如(D://aa.p12)"));
keyStore.load(instream, "证书密码(初始是商户 ID)".toCharArray());//杩欓噷鍐欏
instream.close();
SSLContext sslcontext = SSLContexts.custom().loadKeyMaterial(keyStore, "证书密码(初始是商户 ID)".toCharArray()).build();
SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslcontext,new String[] { "TLSv1" },null,
SSLConnectionSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER);
CloseableHttpClient httpclient = HttpClients.custom() .setSSLSocketFactory(sslsf) .build();
HttpPost httpost = new HttpPost(url); // 璁剧疆鍝嶅簲澶翠俊鎭?
httpost.addHeader("Connection", "keep-alive");
httpost.addHeader("Accept", "*/*");
httpost.addHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
httpost.addHeader("Host", "api.mch.weixin.qq.com");
httpost.addHeader("X-Requested-With", "XMLHttpRequest");
httpost.addHeader("Cache-Control", "max-age=0");
httpost.addHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0) ");
httpost.setEntity(new StringEntity(data, "UTF-8"));
CloseableHttpResponse response = httpclient.execute(httpost);
HttpEntity entity = response.getEntity();
String jsonStr = EntityUtils .toString(response.getEntity(), "UTF-8");
EntityUtils.consume(entity);

5、将以上代码封装到mothod里即可。

6、调用,直接调用方法。参数自己封装!
