이 기사의 예제는 참조를 위해 Java WeChat 앱의 지불 코드를 공유합니다. 특정 내용은 다음과 같습니다
import java.io.ioexception; import java.io.unsupportedEncodingException; import java.util.random; import org.apache.http.parseexception; import org.apache.http.client.clientProtolexception; import org.apache.http.client.htppost; org.apache.http.entity.stringentity; import org.apache.http.impl.client.defaulthtpclient; import org.apache.http.util.entityutils; import org.json.json.json.jsonarray; import org.json.jsonml; import org.json.jsonobson.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json.json. "WX0378BF81ABFE3D26"; // 비공개 정적 최종 최종 최종 int mch_id = 1252196606; // SET SETAT STATIC 최종 문자열 api_key = "B8B9C2BBE92D57CCC38FDE49745056167"; // SET STATIC FINAT STRNITY _URL = "http://www.xxx.com/weixin_notify_url.jsp" ;////////set private static final String arver_type ="app "; // public static void main (String [] args) {postToweChat ("54555545 ","test ", 0.01); PostToweChat ( "5455545", "Chinese", 0.01); // 실패 할 것입니다}/** * wechat에 제출 * * @param out_trade_no * 자신의 시스템의 주문 번호 * @param body * title * @param money * @return */private static jsonobject posttowechat (string letwool x on ontrade, string body, string body x mony) = 새로운 StringBuilder (); 문자열 nonce_str = getrandomstring (32); String IP = "127.0.0.1"; // 클라이언트 IP를 처리합니다. String prepay_id = "", sign = ""; try {string weixinmoney = new java.text.decimalformat ( "#"). 형식 (Money * 100); // wechat은 단위로 나뉘어 100 xml.append ( "appid =")를 곱해야합니다. "UTF-8"); xml.append ( "& mch_id ="). Append (mch_id) .append ( "& nonce_str ="). Append (nonce_str); xml.append ( "¬ify_url ="). Append (notify_url) .append ( "& out_trade_no ="). Append (out_trade_no) .append ( "& spbill_create_ip ="). Append (IP); xml.append ( "& total_fee ="). Append (weixinMoney) .append ( "& trade_type ="). Append (trade_type) .append ( "& key ="). 부록 (api_key); sign = new util (). xml.append ( "<xml>"); xml.append ( "<pupid>"). Append (appid) .append ( "</appid>"); xml.append ( "<body>"). Append (body) .append ( "</body>"); xml.append ( "<mch_id>"). Append (mch_id) .append ( "</mch_id>"); xml.append ( "<nonce_str>"). Append (nonce_str) .append ( "</nonce_str>"); xml.append ( "<notify_url>"). Append (notify_url) .append ( "</notify_url>"); xml.append ( "<out_trade_no>"). Append (out_trade_no) .append ( "</out_trade_no>"); xml.append ( "<spbill_create_ip>"). Append (ip) .append ( "</spbill_create_ip>"); xml.append ( "<tatle_fee>"). Append (weixinMoney) .append ( "</total_fee>"); xml.append ( "<brade_type>"). Append (trade_type) .append ( "</trade_type>"); xml.append ( "<sign>"). Append (sign) .append ( "</sign>"); xml.append ( "</xml>"); httppost post = new httppost ( "https://api.mch.weixin.qq.com/pay/unifeordorder"); 엄격한 엔티티 = 새로운 엄격함 (xml.toString (), "UTF-8"); entity.setContentEncoding ( "UTF-8"); Entity.setContentType ( "Text/XML"); post.setentity (엔티티); jsonArray childnodes = jsonml.tojsonobject (entityutils.toString (new defaulthttpclient (). execute (post) .getentity (), "utf-8"). getJsonArray ( "childnodes"); System.out.println (Childnodes); int len = childnodes.length () -1; for (int i = len; i> -1; i-) {jsonobject js = childnodes.getJsonObject (i); if (js.get ( "tagname"). Equals ( "prepay_id")) {prepay_id = js.getJsonArray ( "childnodes"). getString (0); 부서지다; }}} catch (UnsupportedEncodingException e) {e.printstacktrace (); } catch (parseException e) {e.printstacktrace (); } catch (clientProtoColexception e) {e.printstacktrace (); } catch (ioexception e) {e.printstacktrace (); } jso.put ( "부호", 부호); jso.put ( "appid", appid); jso.put ( "비 Cestres", nonce_str); jso.put ( "package", "sign = wxpay"); jso.put ( "파트너", MCH_ID); jso.put ( "propayid", repay_id); jso.put ( "timestamp", system.currenttimemillis ()); 반환 jso; } / ** * 생성 된 문자열의 길이 * @param 길이 * @return * / private static string getRandomString (int length) {String base = "abcdefghijklmnopqrstuvwxyz0123456789"; 랜덤 random = new random (); StringBuffer sb = new StringBuffer (); for (int i = 0; i <length; i ++) {int number = random.nextint (base.length ()); sb.append (base.charat (number)); } return sb.toString (); }}위의 내용은이 기사에 관한 모든 것입니다. 모든 사람들이 Java 프로그래밍을 배우는 것이 도움이되기를 바랍니다.