锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲免费电影网站,亚洲视频免费播放,精品久久久久久亚洲中文字幕http://www.tkk7.com/resteater/闅忓績鑰屽姩zh-cnFri, 09 May 2025 18:29:15 GMTFri, 09 May 2025 18:29:15 GMT60寰俊鐜伴噾綰㈠寘寮鍙?錛圝AVA錛?/title><link>http://www.tkk7.com/resteater/archive/2015/09/15/427316.html</link><dc:creator>浼戞伅椋熷</dc:creator><author>浼戞伅椋熷</author><pubDate>Tue, 15 Sep 2015 03:44:00 GMT</pubDate><guid>http://www.tkk7.com/resteater/archive/2015/09/15/427316.html</guid><wfw:comment>http://www.tkk7.com/resteater/comments/427316.html</wfw:comment><comments>http://www.tkk7.com/resteater/archive/2015/09/15/427316.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/resteater/comments/commentRss/427316.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/resteater/services/trackbacks/427316.html</trackback:ping><description><![CDATA[<span style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">褰撹姹傜粨鏉熷悗錛屼細(xì)鍙楀埌寰俊鏈嶅姟鍣ㄨ繑鍥炵粰鎴戜滑鐨勭粨鏋?/span><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">澶勭悊絎笁鑺備腑鐨剅eback</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">//灝嗘帴鏀跺埌鐨勮繑鍥炰俊鎭?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  Map<String,Object> mso = new HashMap<String,Object>();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   mso = XMLParser.getMapFromXML(reback);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">闇瑕佹姄鍙栧紓甯?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鍐欎竴涓猉MLParser綾?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import org.w3c.dom.Document;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import org.w3c.dom.Element;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import org.w3c.dom.Node;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import org.w3c.dom.NodeList;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import org.xml.sax.SAXException;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import javax.xml.parsers.DocumentBuilder;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import javax.xml.parsers.DocumentBuilderFactory;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import javax.xml.parsers.ParserConfigurationException;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.IOException;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.InputStream;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.util.HashMap;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.util.Map;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">/**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> * User: rizenguo</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> * Date: 2014/11/1</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> * Time: 14:06</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> */</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">public class XMLParser {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static Map<String,Object> getMapFromXML(String xmlString) throws ParserConfigurationException, IOException, SAXException {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        //榪欓噷鐢―om鐨勬柟寮忚В鏋愬洖鍖呯殑鏈涓昏鐩殑鏄槻姝PI鏂板鍥炲寘瀛楁</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        DocumentBuilder builder = factory.newDocumentBuilder();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        InputStream is =  Util.getStringStream(xmlString);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        Document document = builder.parse(is);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        //鑾峰彇鍒癲ocument閲岄潰鐨勫叏閮ㄧ粨鐐?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        NodeList allNodes = document.getFirstChild().getChildNodes();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        Node node;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        Map<String, Object> map = new HashMap<String, Object>();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        int i=0;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        while (i < allNodes.getLength()) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            node = allNodes.item(i);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            if(node instanceof Element){</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                map.put(node.getNodeName(),node.getTextContent());</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            i++;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        return map;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">}</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">濂藉惂錛屽埌榪欓噷錛屽凡緇忓皢緇撴灉閮芥斁鍏ヤ竴涓猰ap閲岄潰鍘諱簡錛岋紝絎旇呰嚜宸卞啓浜嗕竴涓繑鍥炵被錛屾妸map閲岀殑緇撴灉閮絪et鍒拌繑鍥炵被涓紝</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鏈緇堥兘榪斿洖緇欒皟鐢ㄨ繖涓幇閲戠孩鍖呮帴鍙g殑鍏朵粬涓氬姟銆?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">澶у鍙互鍙傝冧竴涓?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鍐欎竴涓猈echatCashHongbaoSendRsp綾?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">public class WechatCashHongbaoSendRsp {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String return_code;                 //榪斿洖鐘舵佺爜</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String return_msg;                  //榪斿洖淇℃伅</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> //浠ヤ笅瀛楁鍦╮eturn_code涓篠UCCESS鐨勬椂鍊欐湁榪斿洖</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String sign;                        //絳懼悕</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String result_code;                 //涓氬姟緇撴灉</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String err_code;                    //閿欒浠g爜</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String err_code_des;                //閿欒浠g爜鎻忚堪</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> //浠ヤ笅瀛楁鍦╮eturn_code鍜宺esult_code閮戒負(fù)SUCCESS鐨勬椂鍊欐湁榪斿洖</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String mch_billno;                  //鍟嗘埛璁㈠崟鍙?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String mch_id;                      //鍟嗘埛鍙?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String wxappid;                     //鍏紬璐﹀彿appid</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String re_openid;                   //鐢ㄦ埛openid</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String total_amount;                //浠樻閲戦</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String send_time;                   //鍙戞斁鎴愬姛鏃墮棿</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String send_listid;                 //寰俊鍗曞彿</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getReturn_code() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return return_code;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setReturn_code(String return_code) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.return_code = return_code;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getReturn_msg() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return return_msg;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setReturn_msg(String return_msg) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.return_msg = return_msg;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getSign() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return sign;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setSign(String sign) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.sign = sign;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getResult_code() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return result_code;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setResult_code(String result_code) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.result_code = result_code;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getErr_code() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return err_code;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setErr_code(String err_code) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.err_code = err_code;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getErr_code_des() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return err_code_des;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setErr_code_des(String err_code_des) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.err_code_des = err_code_des;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getMch_billno() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return mch_billno;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setMch_billno(String mch_billno) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.mch_billno = mch_billno;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getMch_id() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return mch_id;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setMch_id(String mch_id) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.mch_id = mch_id;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getWxappid() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return wxappid;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setWxappid(String wxappid) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.wxappid = wxappid;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getRe_openid() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return re_openid;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setRe_openid(String re_openid) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.re_openid = re_openid;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getTotal_amount() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return total_amount;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setTotal_amount(String total_amount) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.total_amount = total_amount;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getSend_time() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return send_time;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setSend_time(String send_time) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.send_time = send_time;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getSend_listid() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return send_listid;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setSend_listid(String send_listid) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.send_listid = send_listid;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">}</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">灝唌ap閲岀殑鍊奸兘set榪涙潵</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">WechatCashHongbaoSendRsp rsp = new WechatCashHongbaoSendRsp();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  rsp.setReturn_code(String.valueOf(mso.get("return_code")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  rsp.setReturn_msg(String.valueOf(mso.get("return_msg")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  //浠ヤ笅瀛楁鍦╮eturn_code涓篠UCCESS鐨勬椂鍊欐湁榪斿洖</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  if(String.valueOf(mso.get("return_code")).equals("SUCCESS")){</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   rsp.setSign(String.valueOf(mso.get("sign")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   rsp.setResult_code(String.valueOf(mso.get("result_code")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   rsp.setErr_code(String.valueOf(mso.get("err_code")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   rsp.setErr_code_des(String.valueOf(mso.get("err_code_des")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   //浠ヤ笅瀛楁鍦╮eturn_code涓篠UCCESS鐨勬椂鍊欐湁榪斿洖</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   if(String.valueOf(mso.get("result_code")).equals("SUCCESS")) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    rsp.setMch_billno(String.valueOf(mso.get("mch_billno")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    rsp.setMch_id(String.valueOf(mso.get("mch_id")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    rsp.setWxappid(String.valueOf(mso.get("wxappid")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    rsp.setRe_openid(String.valueOf(mso.get("re_openid")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    rsp.setTotal_amount(String.valueOf(mso.get("total_amount")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    rsp.setSend_time(String.valueOf(mso.get("send_time")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    rsp.setSend_listid(String.valueOf(mso.get("send_listid")));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">灝嗘緇撴灉榪斿洖鍑哄幓鍚э紒</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">澹版槑錛氬伐鍏風(fēng)被浠g爜鍙傝冨井淇℃敮浠樺紑鍙戠殑demo錛屾湁浜涜嚜宸卞仛浜嗗皬鏀瑰姩銆?/span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"><br style="background-color: inherit;" /></span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">鏈鍚庤涓鐐圭偣錛屽紑鍙戣繖涓簲鐢ㄦ帴鍙o紝闄や簡鍦ㄥ姞杞借瘉涔﹂偅閲岄亣鍒板洶闅撅紝鍏朵粬鍦版柟榪樻槸姣旇緝欏哄埄鐨勶紝鐒跺悗絎旇呭啓榪欑瘒鍗氬錛屽笇鏈涘皢</span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">鑷繁鐨勭爺絀剁殑涓滆タ鍒嗕韓鍑哄幓錛屾湁鍝簺涓嶅鐨勫湴鏂癸紝鎴栬呬笉濂界殑鍦版柟錛岃鎸囨暀錛屾瘯绔熷綋灞鑰呰糠鏃佽鑰呮竻銆?/span></div><img src ="http://www.tkk7.com/resteater/aggbug/427316.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/resteater/" target="_blank">浼戞伅椋熷</a> 2015-09-15 11:44 <a href="http://www.tkk7.com/resteater/archive/2015/09/15/427316.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>寰俊鐜伴噾綰㈠寘寮鍙?錛圝AVA錛?/title><link>http://www.tkk7.com/resteater/archive/2015/09/14/427301.html</link><dc:creator>浼戞伅椋熷</dc:creator><author>浼戞伅椋熷</author><pubDate>Mon, 14 Sep 2015 04:23:00 GMT</pubDate><guid>http://www.tkk7.com/resteater/archive/2015/09/14/427301.html</guid><wfw:comment>http://www.tkk7.com/resteater/comments/427301.html</wfw:comment><comments>http://www.tkk7.com/resteater/archive/2015/09/14/427301.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/resteater/comments/commentRss/427301.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/resteater/services/trackbacks/427301.html</trackback:ping><description><![CDATA[<span style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">褰撴妸瑕佸彂閫佺殑鏁版嵁鍑嗗濂戒箣鍚庯紝鎺ヤ笅鏉ユ槸瑕佸啓https璇鋒眰錛屾妸瀹冨彂閫佺粰寰俊鏈嶅姟鍣?/span><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">String reback = HttpClientUtil.sendHttpsUrl("<a style="background-color: inherit; cursor: pointer;">https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack</a>", data);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">闇瑕佹姄鍙栧紓甯革紝騫跺鐞嗗ソ寮傚父</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鍐欎竴涓狧ttpClientUtil綾?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.BufferedReader;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.ByteArrayInputStream;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.File;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.FileInputStream;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.IOException;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.InputStream;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.InputStreamReader;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.OutputStream;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.OutputStreamWriter;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.net.HttpURLConnection;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.net.URL;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.security.KeyManagementException;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.security.KeyStore;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.security.KeyStoreException;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.security.NoSuchAlgorithmException;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.security.SecureRandom;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.security.UnrecoverableKeyException;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.security.cert.Certificate;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.security.cert.CertificateException;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.security.cert.CertificateFactory;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.security.cert.X509Certificate;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.util.HashMap;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.util.Map;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import javax.net.ssl.HttpsURLConnection;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import javax.net.ssl.KeyManagerFactory;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import javax.net.ssl.SSLContext;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import javax.net.ssl.TrustManagerFactory;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import com.yxht.core.common.tools.LoadProperties;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import com.yxht.core.modules.WechatPay.client.TenpayHttpClient;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">/**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> * Http瀹㈡埛绔伐鍏風(fēng)被<br/></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> * 榪欐槸鍐呴儴璋冪敤綾伙紝璇蜂笉瑕佸湪澶栭儴璋冪敤銆?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> * @author miklchen</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> *</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> */</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">public class HttpClientUtil {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> /**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  * 鍙戦佽姹傦紙寰俊鏀粯鐢紝鍙戠孩鍖呯瓑絳夛級</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  * @param url</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  * @param params</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  * @return</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  * @throws Exception</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  */</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public static String sendHttpsUrl(String sendUrl, String params) throws Exception{</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  String jsonStr = "";</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  String certificate_path = "d\:\\<span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">rootca.pem</span>"; //淇′換搴撹瘉涔?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  String keystore_path = "d\:\\<span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">apiclient_cert.p12</span>"; //瀵嗛挜搴撹瘉涔?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  String password = "xxxxxxxx"; //鍟嗘埛鍙鳳紝涔熸槸鍔犺澆璇佷功鐨勫瘑鐮?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  // 澹版槑SSL涓婁笅鏂? </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        SSLContext sslContext = null;  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 瀹炰緥鍖栦富鏈哄悕楠岃瘉鎺ュ彛  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        sslContext = getSSLContext(password, keystore_path, certificate_path);  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        if (sslContext != null) {  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            HttpsURLConnection.setDefaultSSLSocketFactory(sslContext  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                    .getSocketFactory());  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        }  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  URL url = new URL(sendUrl);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  HttpsURLConnection con = (HttpsURLConnection) url.openConnection();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  con.setRequestMethod("POST");</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  con.setDoOutput(true);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  con.setDoInput(true);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  con.setUseCaches(false);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  //璁劇疆濂楁帴宸ュ巶</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  con.setSSLSocketFactory(sslContext.getSocketFactory());</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  OutputStreamWriter writer = new OutputStreamWriter(</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    con.getOutputStream(), "UTF-8");</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  writer.write(params);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  writer.flush();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  writer.close();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  InputStream in = con.getInputStream();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  BufferedReader db = new BufferedReader(new InputStreamReader(in, "UTF-8"));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  String tmp = "";</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  while ((tmp = db.readLine()) != null) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   jsonStr += tmp;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return jsonStr;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> /**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * 鑾峰緱SSLSocketFactory.</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @param password</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     *            瀵嗙爜</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @param keyStorePath</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     *            瀵嗛挜搴撹礬寰?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @param trustStorePath</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     *            淇′換搴撹礬寰?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @return SSLSocketFactory</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @throws Exception</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     */  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static SSLContext getSSLContext(String password,  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            String keyStorePath, String trustStorePath) throws Exception {  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 瀹炰緥鍖栧瘑閽ュ簱  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        KeyManagerFactory keyManagerFactory = KeyManagerFactory  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                .getInstance(KeyManagerFactory.getDefaultAlgorithm());  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 鑾峰緱瀵嗛挜搴? </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        KeyStore keyStore = getKeyStore(password, keyStorePath);  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 鍒濆鍖栧瘑閽ュ伐鍘? </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        keyManagerFactory.init(keyStore, password.toCharArray());  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 瀹炰緥鍖栦俊浠誨簱  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">//        TrustManagerFactory trustManagerFactory = TrustManagerFactory  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">//                .getInstance(TrustManagerFactory.getDefaultAlgorithm());  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">//        // 鑾峰緱淇′換搴? </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">//        KeyStore trustStore = getKeyStore(password, trustStorePath);  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">//        // 鍒濆鍖栦俊浠誨簱  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">//        trustManagerFactory.init(trustStore);  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 瀹炰緥鍖朣SL涓婁笅鏂? </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        SSLContext ctx = SSLContext.getInstance("TLS");  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 鍒濆鍖朣SL涓婁笅鏂? </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        ctx.init(keyManagerFactory.getKeyManagers(),  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                null, null);  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 鑾峰緱SSLSocketFactory  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        return ctx;  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    /**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * 鑾峰緱KeyStore.</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @param keyStorePath</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     *            瀵嗛挜搴撹礬寰?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @param password</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     *            瀵嗙爜</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @return 瀵嗛挜搴?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @throws Exception</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     */  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static KeyStore getKeyStore(String password, String keyStorePath)  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            throws Exception {  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 瀹炰緥鍖栧瘑閽ュ簱  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        KeyStore ks = KeyStore.getInstance("PKCS12");  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 鑾峰緱瀵嗛挜搴撴枃浠舵祦  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        FileInputStream is = new FileInputStream(keyStorePath);  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 鍔犺澆瀵嗛挜搴? </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        ks.load(is, password.toCharArray());  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        // 鍏抽棴瀵嗛挜搴撴枃浠舵祦  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        is.close();  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        return ks;  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">}</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鏈変簺import鐨勬病鐢紝鍙互鍒犳帀錛屽彧瑕佺▼搴忎唬鐮佹病鏈夋姤閿欑殑鍦版柟灝辮銆?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鍒拌繖閲岋紝濡傛灉鍙戦佽姹傦紝浼?xì)澶辫触锛屽畠浼?xì)璇翠綘娌℃湁瀹夎璇佷功錛屽埌鍟嗘埛騫沖彴涓婂幓涓嬭澆璇佷功錛屾枃妗i噷鏈夎鏄?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">涓嬭澆鍚庝竴鍏辨湁4涓瘉涔︼紝鑷沖皯闇瑕佸瘑閽ュ簱璇佷功<span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">apiclient_cert.p12錛屽洜涓轟俊浠誨簱璇佷功rootca.pem鎴戜笉浼?xì)鐢ㄥQ堝摢浣嶅ぇ紲炰細(xì)鐢ㄦ暀鏁欐垜錛夛紝</span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">鏂囨。閲屼篃璇翠簡淇′換搴撹瘉涔︿笉鐢ㄤ篃琛岋紝璇佷功瀹夎璇蜂粩緇嗙爺絀舵枃妗o紝浠g爜涓婇潰宸茬粡鍐欏ソ浜嗐?/span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"><br style="background-color: inherit;" /></span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">鏈鍚庢渶鍚庯紝錛岃鍙戦佽姹傚惂錛侊紒錛?/span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"><br style="background-color: inherit;" /></span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">澹版槑錛氬伐鍏風(fēng)被浠g爜鍙傝冨井淇℃敮浠樺紑鍙戠殑demo錛屾湁浜涜嚜宸卞仛浜嗗皬鏀瑰姩銆?br style="background-color: inherit;" /></span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"><br style="background-color: inherit;" /></span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">PS:闇瑕佸紩鍏ttp鐩稿叧jar鍖咃紝httpcore-4.2.3.jar,httpmine-4.2.3.jar,httpclient-4.2.3.jar,httpclient-cache-4.2.3.jar銆備竴鏍鳳紝</span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">榪樻槸鍘?a style="cursor: pointer; font-family: 寰蔣闆呴粦;">https://repository.sonatype.org</a>閲岄潰鎵懼惂錛屽鏋滄槸maven寤虹珛鐨勯」鐩?灝辨妸浠栦滑寮曞叆鍒皃om.xml閲岄潰鍘誨惂錛?/span></div><img src ="http://www.tkk7.com/resteater/aggbug/427301.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/resteater/" target="_blank">浼戞伅椋熷</a> 2015-09-14 12:23 <a href="http://www.tkk7.com/resteater/archive/2015/09/14/427301.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>寰俊鐜伴噾綰㈠寘寮鍙?錛圝AVA錛?/title><link>http://www.tkk7.com/resteater/archive/2015/09/11/427271.html</link><dc:creator>浼戞伅椋熷</dc:creator><author>浼戞伅椋熷</author><pubDate>Fri, 11 Sep 2015 07:46:00 GMT</pubDate><guid>http://www.tkk7.com/resteater/archive/2015/09/11/427271.html</guid><wfw:comment>http://www.tkk7.com/resteater/comments/427271.html</wfw:comment><comments>http://www.tkk7.com/resteater/archive/2015/09/11/427271.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/resteater/comments/commentRss/427271.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/resteater/services/trackbacks/427271.html</trackback:ping><description><![CDATA[<span style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">絎竴鑺傝浜嗘庝箞鍑嗗鎵鏈夌殑鍙傛暟錛岃繖閲岃鎬庝箞灝嗚繖浜涘弬鏁扮粍鎴恱ml錛堝嵆瑕侀氳繃HTTPS鍙戦佺殑鏁版嵁錛?/span><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">澶у鍙互鍏堝湪緗戜笂浜嗚В涓涓媕ava bean杞瑇ml鐨勭浉鍏崇煡璇?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">1銆佹垜寤轟簡閲屼竴涓姹傚弬鏁扮被</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">public class WechatCashHongbaoSendReq {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String nonce_str;             //闅忔満瀛楃涓?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String sign;                  //絳懼悕</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String mch_billno;            //鍟嗘埛璁㈠崟鍙?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String mch_id;                //鍟嗘埛鍙?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String wxappid;               //鍏紬璐﹀彿appid</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String send_name;             //鍟嗘埛鍚嶇О</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String re_openid;             //鐢ㄦ埛openid</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private int total_amount;          //浠樻閲戦</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private int total_num;             //綰㈠寘鍙戞斁鎬諱漢鏁?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String wishing;               //綰㈠寘紲濈璇?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String client_ip;             //Ip鍦板潃</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String act_name;              //媧誨姩鍚嶇О</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private String remark;                //澶囨敞</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getNonce_str() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return nonce_str;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setNonce_str(String nonce_str) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.nonce_str = nonce_str;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getSign() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return sign;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setSign(String sign) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.sign = sign;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getMch_billno() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return mch_billno;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setMch_billno(String mch_billno) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.mch_billno = mch_billno;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getMch_id() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return mch_id;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setMch_id(String mch_id) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.mch_id = mch_id;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getWxappid() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return wxappid;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setWxappid(String wxappid) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.wxappid = wxappid;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getSend_name() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return send_name;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setSend_name(String send_name) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.send_name = send_name;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getRe_openid() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return re_openid;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setRe_openid(String re_openid) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.re_openid = re_openid;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public int getTotal_amount() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return total_amount;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setTotal_amount(int total_amount) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.total_amount = total_amount;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public int getTotal_num() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return total_num;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setTotal_num(int total_num) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.total_num = total_num;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getWishing() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return wishing;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setWishing(String wishing) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.wishing = wishing;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getClient_ip() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return client_ip;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setClient_ip(String client_ip) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.client_ip = client_ip;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getAct_name() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return act_name;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setAct_name(String act_name) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.act_name = act_name;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public String getRemark() {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  return remark;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> public void setRemark(String remark) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  this.remark = remark;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">}</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="background-color: inherit; line-height: 1.5;"><br style="background-color: inherit;" /></span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="background-color: inherit; line-height: 1.5;">2銆佺劧鍚庢妸13涓弬鏁伴兘set榪涘幓</span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">WechatCashHongbaoSendReq sendReq = new WechatCashHongbaoSendReq();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setNonce_str(nonce_str);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setSign(sign);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setMch_billno(mch_billno);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setMch_id(mch_id);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setWxappid(wxappid);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setSend_name(send_name);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setRe_openid(re_openid);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setTotal_amount(total_amount);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setTotal_num(total_num);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setWishing(wishing);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setClient_ip(client_ip);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setAct_name(act_name);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  sendReq.setRemark(remark);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">3銆佸皢璇鋒眰綾昏漿涓簒ml</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">String data = Util.bean2XML(req).replaceAll("__", "_");    //涓轟粈涔堣鍔犱竴涓猺eplaceAll("__", "_"),濡傛灉涓嶅姞錛屼細(xì)鏈変粈涔堟儏鍐碉紝澶у鍙互璇曡瘯</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鍐欎竴涓猆til綾伙紝浠g爜濡備笅錛?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import com.thoughtworks.xstream.XStream;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import com.thoughtworks.xstream.core.util.QuickWriter;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import com.thoughtworks.xstream.io.HierarchicalStreamWriter;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import com.thoughtworks.xstream.io.xml.PrettyPrintWriter;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import com.thoughtworks.xstream.io.xml.XppDriver;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.io.*;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.lang.reflect.Field;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.util.Map;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">/**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> * User: rizenguo</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> * Date: 2014/10/23</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> * Time: 14:59</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> */</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">public class Util {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    //鎵搇og鐢?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    /**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * 閫氳繃鍙嶅皠鐨勬柟寮忛亶鍘嗗璞$殑灞炴у拰灞炴у鹼紝鏂逛究璋冭瘯</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     *</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @param o 瑕侀亶鍘嗙殑瀵硅薄</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @throws Exception</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     */</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static void reflect(Object o) throws Exception {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        Class cls = o.getClass();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        Field[] fields = cls.getDeclaredFields();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        for (int i = 0; i < fields.length; i++) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            Field f = fields[i];</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            f.setAccessible(true);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            Util.log(f.getName() + " -> " + f.get(o));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static byte[] readInput(InputStream in) throws IOException {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        ByteArrayOutputStream out = new ByteArrayOutputStream();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        int len = 0;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        byte[] buffer = new byte[1024];</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        while ((len = in.read(buffer)) > 0) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            out.write(buffer, 0, len);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        out.close();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        in.close();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        return out.toByteArray();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static String inputStreamToString(InputStream is) throws IOException {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        ByteArrayOutputStream baos = new ByteArrayOutputStream();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        int i;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        while ((i = is.read()) != -1) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            baos.write(i);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        return baos.toString();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static InputStream getStringStream(String sInputString) throws UnsupportedEncodingException {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        ByteArrayInputStream tInputStringStream = null;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        if (sInputString != null && !sInputString.trim().equals("")) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            tInputStringStream = new ByteArrayInputStream(sInputString.getBytes("UTF-8"));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        return tInputStringStream;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static Object getObjectFromXML(String xml, Class tClass) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        //灝嗕粠API榪斿洖鐨刋ML鏁版嵁鏄犲皠鍒癑ava瀵硅薄</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     xstream.alias("xml", tClass);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        return xstream.fromXML(xml);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static String getStringFromMap(Map<String, Object> map, String key, String defaultValue) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        if (key == "" || key == null) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            return defaultValue;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        String result = (String) map.get(key);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        if (result == null) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            return defaultValue;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        } else {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            return result;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static int getIntFromMap(Map<String, Object> map, String key) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        if (key == "" || key == null) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            return 0;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        if (map.get(key) == null) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            return 0;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        return Integer.parseInt((String) map.get(key));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    /**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * 鎵搇og鎺ュ彛</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @param log 瑕佹墦鍗扮殑log瀛楃涓?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @return 榪斿洖log</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     */</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static String log(Object log){</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        return log.toString();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    /**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * 璇誨彇鏈湴鐨剎ml鏁版嵁錛屼竴鑸敤鏉ヨ嚜嫻嬬敤</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @param localPath 鏈湴xml鏂囦歡璺緞</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @return 璇誨埌鐨剎ml瀛楃涓?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     */</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static String getLocalXMLString(String localPath) throws IOException {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        return Util.inputStreamToString(Util.class.getResourceAsStream(localPath));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    /**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * 灝唈ava瀵硅薄杞負(fù)xml瀛楃涓?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @param clazz</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @return</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     */</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static String bean2XML(Object o){</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     xstream.alias("xml", o.getClass());</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     return xstream.toXML(o);</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    /**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  * 鎵╁睍xstream錛屼嬌鍏舵敮鎸丆DATA鍧?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  *  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  * @date 2013-05-19</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">  */  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> private static XStream xstream = new XStream(new XppDriver() {  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     public HierarchicalStreamWriter createWriter(Writer out) {  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">         return new PrettyPrintWriter(out) {  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">             // 瀵規(guī)墍鏈墄ml鑺傜偣鐨勮漿鎹㈤兘澧炲姞CDATA鏍囪  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">             boolean cdata = true;  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">             @SuppressWarnings("unchecked")  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">             public void startNode(String name, Class clazz) {  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                 super.startNode(name, clazz);  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">             }  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">             protected void writeText(QuickWriter writer, String text) {  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                 if (cdata) {  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                     writer.write("<![CDATA[");  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                     writer.write(text);  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                     writer.write("]]>");  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                 } else {  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                     writer.write(text);  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">                 }  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">             }  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">         };  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     }  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> });  </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">   </div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">}</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鍒拌繖涓姝ワ紝宸茬粡瀹屾垚浜嗘渶緇堣鍙戦佸嚭鍘葷殑鏁版嵁錛岀劧鍚庢槸鍐檋ttp璇鋒眰鏂規(guī)硶銆?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">澹版槑錛氬伐鍏風(fēng)被浠g爜鍙傝冨井淇℃敮浠樺紑鍙戠殑demo錛屾湁浜涜嚜宸卞仛浜嗗皬鏀瑰姩銆?/span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">PS:闇瑕佸紩鍏stream-1.3.1.jar鍖咃紝澶у鍙互鍘籥pache涓ぎ浠撳簱鎵?a style="cursor: pointer;">https://repository.sonatype.org</a>錛岃緭鍏stream灝卞彲浠ユ悳绱㈠埌錛屽茍涓嬭澆鍑烘潵錛屽鏋滀綘鐨勯」鐩槸maven寤虹珛鐨勶紝鐩存帴鍦╬om.xml閲岄潰鍔犱笂灝辮</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><dependency></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     <groupId>com.thoughtworks.xstream</groupId></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     <artifactId>xstream</artifactId></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     <version>1.3.1</version></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></dependency></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><img src ="http://www.tkk7.com/resteater/aggbug/427271.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/resteater/" target="_blank">浼戞伅椋熷</a> 2015-09-11 15:46 <a href="http://www.tkk7.com/resteater/archive/2015/09/11/427271.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>寰俊鐜伴噾綰㈠寘寮鍙?錛圝AVA錛?/title><link>http://www.tkk7.com/resteater/archive/2015/09/10/427248.html</link><dc:creator>浼戞伅椋熷</dc:creator><author>浼戞伅椋熷</author><pubDate>Thu, 10 Sep 2015 07:35:00 GMT</pubDate><guid>http://www.tkk7.com/resteater/archive/2015/09/10/427248.html</guid><wfw:comment>http://www.tkk7.com/resteater/comments/427248.html</wfw:comment><comments>http://www.tkk7.com/resteater/archive/2015/09/10/427248.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/resteater/comments/commentRss/427248.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/resteater/services/trackbacks/427248.html</trackback:ping><description><![CDATA[<span style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">寮鍙戜箣鍓嶏紝鏈濂芥湁涓浜涘井淇″紑鍙戠殑緇忛獙錛屽厛鐪嬩竴涓嬫枃妗o紝浜嗚В涓涓?/span><a style="cursor: pointer; font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">https://pay.weixin.qq.com/wiki/doc/api/cash_coupon.php?chapter=13_5</a><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鏂囨。榪囦簡涓閬嶄箣鍚庯紝鑴戞搗閲屽簲璇ユ湁浜涘嵃璞′簡錛屽簾璇濅笉璇達(dá)紝榪涘叆寮鍙戙?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鍑嗗鍙傛暟錛屼竴涓竴涓潵銆?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鍙傛暟1錛氶殢鏈哄瓧絎︿覆    <span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">nonce_str</span><br style="background-color: inherit;" /><div style="background-color: inherit;"></div></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">//鑾峰彇闅忔満鏁?榪欓噷璁懼畾闀垮害20,鍙涓嶆垚闀夸簬32浣?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">String nonce_str = RandomStringGenerator.getRandomStringByLength(20); </span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"><br style="background-color: inherit;" /></span></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鍐欎竴涓猂andomStringGenerator綾伙紝鍐欎竴涓猤etRandomStringByLength闈欐佹柟娉?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">import java.util.Random;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">/**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> * User: rizenguo</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> * Date: 2014/10/29</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"> */</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">public class RandomStringGenerator {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    /**</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * 鑾峰彇涓瀹氶暱搴︾殑闅忔満瀛楃涓?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @param length 鎸囧畾瀛楃涓查暱搴?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     * @return 涓瀹氶暱搴︾殑瀛楃涓?/div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">     */</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    public static String getRandomStringByLength(int length) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        String base = "abcdefghijklmnopqrstuvwxyz0123456789";</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        Random random = new Random();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        StringBuffer sb = new StringBuffer();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        for (int i = 0; i < length; i++) {</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            int number = random.nextInt(base.length());</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">            sb.append(base.charAt(number));</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">        return sb.toString();</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">    }</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">}</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"></div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">鍙傛暟2 錛?nbsp;鍟嗘埛鍙?  mch_id</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;">String mch_id = “xxxxxxxx”;</div><div style="font-family: 寰蔣闆呴粦; widows: auto; background-color: #ffffff;"><div style="background-color: inherit;"><img src="file:///C:/Documents%20and%20Settings/lb/Local%20Settings/Application%20Data/YNote/data/tclobbyer@163.com/ee8fd967b8764c46a330ebc1c59424ff/j%25sbr5%5Bm40nw.png" data-media-type="image" data-attr-org-src-id="91F0A2992DFC4197A82799ADEEE8812B" data-attr-org-img-file="file:///C:/Documents%20and%20Settings/lb/Local%20Settings/Application%20Data/YNote/data/tclobbyer@163.com/ee8fd967b8764c46a330ebc1c59424ff/j%25sbr5%5Bm40nw.png" style="background-color: inherit; cursor: default; display: inline-block; margin-top: 8px; max-width: 800px;" alt="" /></div><div style="background-color: inherit;"></div><div style="background-color: inherit;"><img src="http://www.tkk7.com/images/blogjava_net/resteater/QQ鍥劇墖20150910153338.png" width="768" height="653" alt="" /></div><div style="background-color: inherit;"><br />鍙傛暟3 錛?nbsp;<span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">鍟嗘埛璁㈠崟鍙? mch_billno</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"><br style="background-color: inherit;" /></span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">String mch_billno = mch_id + GenerateSequenceUtil.generateSequenceNo();</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"><br style="background-color: inherit;" /></span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">浜涗竴涓狦enerateSequenceUtil綾伙紝鍐欎竴涓猤enerateSequenceNo鏂規(guī)硶</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"><br style="background-color: inherit;" /></span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">import java.text.DecimalFormat;</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">import java.text.FieldPosition;</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">import java.text.Format;</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">import java.text.NumberFormat;</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">import java.text.SimpleDateFormat;</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">import java.util.Calendar;</span></div><div style="background-color: inherit;"> </div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">import org.apache.log4j.Logger;</span></div><div style="background-color: inherit;"> </div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">public class GenerateSequenceUtil {</span></div><div style="background-color: inherit;"> </div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> /** .log */</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> private static final Logger logger = Logger.getLogger(GenerateSequenceUtil.class);</span></div><div style="background-color: inherit;"> </div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> /** The FieldPosition. */</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> private static final FieldPosition HELPER_POSITION = new FieldPosition(0);</span></div><div style="background-color: inherit;"> </div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> /** This Format for format the data to special format. */</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> private final static Format dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");</span></div><div style="background-color: inherit;"> </div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> /** This Format for format the number to special format. */</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> private final static NumberFormat numberFormat = new DecimalFormat("0000");</span></div><div style="background-color: inherit;"> </div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> /** This int is the sequence number ,the default value is 0. */</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> private static int seq = 0;</span></div><div style="background-color: inherit;"> </div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> private static final int MAX = 9999;</span></div><div style="background-color: inherit;"> </div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> /**</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> * 鏃墮棿鏍煎紡鐢熸垚搴忓垪</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> * @return String</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> */</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> public static synchronized String generateSequenceNo() {</span></div><div style="background-color: inherit;"> </div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">  Calendar rightNow = Calendar.getInstance();</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">   </span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">  StringBuffer sb = new StringBuffer();</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">   </span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">  dateFormat.format(rightNow.getTime(), sb, HELPER_POSITION);</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">   </span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">  numberFormat.format(seq, sb, HELPER_POSITION);</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">   </span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">  if (seq == MAX) {</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">   seq = 0;</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">  } else {</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">   seq++;</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">  }</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">   </span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">  logger.info("THE SQUENCE IS :" + sb.toString());</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">   </span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">  return sb.toString();</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"> }</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"><br style="background-color: inherit;" /></span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">鍙傛暟4錛?nbsp;鍏紬璐﹀彿appid   wxappid</span></div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;"><br style="background-color: inherit;" /></span></div><div style="background-color: inherit;">榪欎釜鍙傛暟鍙互鍦ㄥ井淇″紑鍙戣呬腑蹇冮噷闈㈢湅鍒?/div><div style="background-color: inherit;"><span style="color: #222222; font-family: 'Helvetica Neue', 'Hiragino Sans GB', 'Microsoft YaHei', 榛戜綋, Arial, sans-serif;">//寰俊鍒嗛厤鐨勫叕浼楄處鍙稩D</span></div><div style="background-color: inherit;">String wxappid = "wx8888888888888888";</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">鍙傛暟5 錛?nbsp;鍟嗘埛鍚嶇О   send_name</div><div style="background-color: inherit;">闅忎究鍐?/div><div style="background-color: inherit;">String send_name = "嫻嬭瘯鑰?;   </div><div style="background-color: inherit;"></div><div style="background-color: inherit;">鍙傛暟6 錛?nbsp;鐢ㄦ埛openid   re_openid</div><div style="background-color: inherit;">寰俊鍙峰拰鍏紬鍙峰搴旂殑鍞竴鐨勫姞瀵嗚繃鐨勫瓧絎︿覆</div><div style="background-color: inherit;">String re_openid = "xxxxxxxxxxxxxxxxxxxxxxx";</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">鍙傛暟7錛?nbsp;浠樻閲戦   total_amount</div><div style="background-color: inherit;">int total_amount = 100;    鍗曚綅鍒?/div><div style="background-color: inherit;"></div><div style="background-color: inherit;">鍙傛暟8 錛?nbsp;綰㈠寘鍙戞斁鎬諱漢鏁? total_num</div><div style="background-color: inherit;">int total_num = 1;</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">鍙傛暟9 錛?nbsp;綰㈠寘紲濈璇?  wishing</div><div style="background-color: inherit;">闅忎究鍐?/div><div style="background-color: inherit;">String wishing = "嫻嬭瘯";</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">鍙傛暟10 錛?nbsp;Ip鍦板潃   client_ip</div><div style="background-color: inherit;">String client_ip = InetAddress.getLocalHost().getHostAddress().toString();</div><div style="background-color: inherit;">榪欓噷鍙兘鎶ュ紓甯革紝闇瑕佹姄鍙栦竴涓?/div><div style="background-color: inherit;"></div><div style="background-color: inherit;">鍙傛暟11 錛?nbsp;媧誨姩鍚嶇О   act_name</div><div style="background-color: inherit;">闅忎究鍐?/div><div style="background-color: inherit;">String act_name = "嫻嬭瘯鍒涘緩20150906";</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">鍙傛暟12 錛?nbsp;澶囨敞  remark</div><div style="background-color: inherit;">闅忎究鍐?/div><div style="background-color: inherit;">String remark = "嫻嬭瘯";</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">鏈鍚庝竴涓弬鏁皊ign</div><div style="background-color: inherit;">//絳懼悕</div><div style="background-color: inherit;">  Map<String,Object> map = new HashMap<String,Object>();</div><div style="background-color: inherit;">  map.put("nonce_str", nonce_str);</div><div style="background-color: inherit;">  map.put("mch_billno", mch_billno);</div><div style="background-color: inherit;">  map.put("mch_id", mch_id);</div><div style="background-color: inherit;">  map.put("wxappid", wxappid);</div><div style="background-color: inherit;">  map.put("send_name", send_name);</div><div style="background-color: inherit;">  map.put("re_openid", re_openid);</div><div style="background-color: inherit;">  map.put("total_amount", total_amount);</div><div style="background-color: inherit;">  map.put("total_num", total_num);</div><div style="background-color: inherit;">  map.put("wishing", wishing);</div><div style="background-color: inherit;">  map.put("client_ip", client_ip);</div><div style="background-color: inherit;">  map.put("act_name", act_name);</div><div style="background-color: inherit;">  map.put("remark", remark);</div><div style="background-color: inherit;">  String sign = Signature.getSign(map);</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">鍐欎竴涓猄ignature綾伙紝浠g爜濡備笅錛?/div><div style="background-color: inherit;"></div><div style="background-color: inherit;">import org.xml.sax.SAXException;</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">import com.yxht.core.common.tools.LoadProperties;</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">import javax.xml.parsers.ParserConfigurationException;</div><div style="background-color: inherit;">import java.io.IOException;</div><div style="background-color: inherit;">import java.lang.reflect.Field;</div><div style="background-color: inherit;">import java.util.ArrayList;</div><div style="background-color: inherit;">import java.util.Arrays;</div><div style="background-color: inherit;">import java.util.Map;</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">/**</div><div style="background-color: inherit;"> * User: rizenguo</div><div style="background-color: inherit;"> * Date: 2014/10/29</div><div style="background-color: inherit;"> * Time: 15:23</div><div style="background-color: inherit;"> */</div><div style="background-color: inherit;">public class Signature {</div><div style="background-color: inherit;">    /**</div><div style="background-color: inherit;">     * 絳懼悕綆楁硶</div><div style="background-color: inherit;">     * @param o 瑕佸弬涓庣鍚嶇殑鏁版嵁瀵硅薄</div><div style="background-color: inherit;">     * @return 絳懼悕</div><div style="background-color: inherit;">     * @throws IllegalAccessException</div><div style="background-color: inherit;">     */</div><div style="background-color: inherit;">    public static String getSign(Object o) throws IllegalAccessException {</div><div style="background-color: inherit;">        ArrayList<String> list = new ArrayList<String>();</div><div style="background-color: inherit;">        Class cls = o.getClass();</div><div style="background-color: inherit;">        Field[] fields = cls.getDeclaredFields();</div><div style="background-color: inherit;">        for (Field f : fields) {</div><div style="background-color: inherit;">            f.setAccessible(true);</div><div style="background-color: inherit;">            if (f.get(o) != null && f.get(o) != "") {</div><div style="background-color: inherit;">                list.add(f.getName() + "=" + f.get(o) + "&");</div><div style="background-color: inherit;">            }</div><div style="background-color: inherit;">        }</div><div style="background-color: inherit;">        int size = list.size();</div><div style="background-color: inherit;">        String [] arrayToSort = list.toArray(new String[size]);</div><div style="background-color: inherit;">        Arrays.sort(arrayToSort, String.CASE_INSENSITIVE_ORDER);</div><div style="background-color: inherit;">        StringBuilder sb = new StringBuilder();</div><div style="background-color: inherit;">        for(int i = 0; i < size; i ++) {</div><div style="background-color: inherit;">            sb.append(arrayToSort[i]);</div><div style="background-color: inherit;">        }</div><div style="background-color: inherit;">        String result = sb.toString();</div><div style="background-color: inherit;">        result += "key=" + "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";   //榪欓噷鏄紑鍙戣呬腑蹇冮噷闈㈡湇鍔″櫒閰嶇疆閲岄潰鐨勬秷鎭姞瑙e瘑瀵嗛挜</div><div style="background-color: inherit;">        Util.log("Sign Before MD5:" + result);</div><div style="background-color: inherit;">        result = MD5.MD5Encode(result).toUpperCase();</div><div style="background-color: inherit;">        Util.log("Sign Result:" + result);</div><div style="background-color: inherit;">        return result;</div><div style="background-color: inherit;">    }</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">    public static String getSign(Map<String,Object> map){</div><div style="background-color: inherit;">        ArrayList<String> list = new ArrayList<String>();</div><div style="background-color: inherit;">        for(Map.Entry<String,Object> entry:map.entrySet()){</div><div style="background-color: inherit;">            if(entry.getValue()!=""){</div><div style="background-color: inherit;">                list.add(entry.getKey() + "=" + entry.getValue() + "&");</div><div style="background-color: inherit;">            }</div><div style="background-color: inherit;">        }</div><div style="background-color: inherit;">        int size = list.size();</div><div style="background-color: inherit;">        String [] arrayToSort = list.toArray(new String[size]);</div><div style="background-color: inherit;">        Arrays.sort(arrayToSort, String.CASE_INSENSITIVE_ORDER);</div><div style="background-color: inherit;">        StringBuilder sb = new StringBuilder();</div><div style="background-color: inherit;">        for(int i = 0; i < size; i ++) {</div><div style="background-color: inherit;">            sb.append(arrayToSort[i]);</div><div style="background-color: inherit;">        }</div><div style="background-color: inherit;">        String result = sb.toString();</div><div style="background-color: inherit;">        result += "key=" + LoadProperties.getSystemdefaultValue("APP_KEY");</div><div style="background-color: inherit;">        result = MD5.MD5Encode(result).toUpperCase();</div><div style="background-color: inherit;">        return result;</div><div style="background-color: inherit;">    }</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">    /**</div><div style="background-color: inherit;">     * 浠嶢PI榪斿洖鐨刋ML鏁版嵁閲岄潰閲嶆柊璁$畻涓嬈$鍚?/div><div style="background-color: inherit;">     * @param responseString API榪斿洖鐨刋ML鏁版嵁</div><div style="background-color: inherit;">     * @return 鏂伴矞鍑虹倝鐨勭鍚?/div><div style="background-color: inherit;">     * @throws ParserConfigurationException</div><div style="background-color: inherit;">     * @throws IOException</div><div style="background-color: inherit;">     * @throws SAXException</div><div style="background-color: inherit;">     */</div><div style="background-color: inherit;">    public static String getSignFromResponseString(String responseString) throws IOException, SAXException, ParserConfigurationException {</div><div style="background-color: inherit;">        Map<String,Object> map = XMLParser.getMapFromXML(responseString);</div><div style="background-color: inherit;">        //娓呮帀榪斿洖鏁版嵁瀵硅薄閲岄潰鐨凷ign鏁版嵁錛堜笉鑳芥妸榪欎釜鏁版嵁涔熷姞榪涘幓榪涜絳懼悕錛夛紝鐒跺悗鐢ㄧ鍚嶇畻娉曡繘琛岀鍚?/div><div style="background-color: inherit;">        map.put("sign","");</div><div style="background-color: inherit;">        //灝咥PI榪斿洖鐨勬暟鎹牴鎹敤絳懼悕綆楁硶榪涜璁$畻鏂扮殑絳懼悕錛岀敤鏉ヨ窡API榪斿洖鐨勭鍚嶈繘琛屾瘮杈?/div><div style="background-color: inherit;">        return Signature.getSign(map);</div><div style="background-color: inherit;">    }</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">    /**</div><div style="background-color: inherit;">     * 媯楠孉PI榪斿洖鐨勬暟鎹噷闈㈢殑絳懼悕鏄惁鍚堟硶錛岄伩鍏嶆暟鎹湪浼犺緭鐨勮繃紼嬩腑琚涓夋柟綃℃敼</div><div style="background-color: inherit;">     * @param responseString API榪斿洖鐨刋ML鏁版嵁瀛楃涓?/div><div style="background-color: inherit;">     * @return API絳懼悕鏄惁鍚堟硶</div><div style="background-color: inherit;">     * @throws ParserConfigurationException</div><div style="background-color: inherit;">     * @throws IOException</div><div style="background-color: inherit;">     * @throws SAXException</div><div style="background-color: inherit;">     */</div><div style="background-color: inherit;">    public static boolean checkIsSignValidFromResponseString(String responseString) throws ParserConfigurationException, IOException, SAXException {</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">        Map<String,Object> map = XMLParser.getMapFromXML(responseString);</div><div style="background-color: inherit;">        Util.log(map.toString());</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">        String signFromAPIResponse = map.get("sign").toString();</div><div style="background-color: inherit;">        if(signFromAPIResponse=="" || signFromAPIResponse == null){</div><div style="background-color: inherit;">            Util.log("API榪斿洖鐨勬暟鎹鍚嶆暟鎹笉瀛樺湪錛屾湁鍙兘琚涓夋柟綃℃敼!!!");</div><div style="background-color: inherit;">            return false;</div><div style="background-color: inherit;">        }</div><div style="background-color: inherit;">        Util.log("鏈嶅姟鍣ㄥ洖鍖呴噷闈㈢殑絳懼悕鏄?" + signFromAPIResponse);</div><div style="background-color: inherit;">        //娓呮帀榪斿洖鏁版嵁瀵硅薄閲岄潰鐨凷ign鏁版嵁錛堜笉鑳芥妸榪欎釜鏁版嵁涔熷姞榪涘幓榪涜絳懼悕錛夛紝鐒跺悗鐢ㄧ鍚嶇畻娉曡繘琛岀鍚?/div><div style="background-color: inherit;">        map.put("sign","");</div><div style="background-color: inherit;">        //灝咥PI榪斿洖鐨勬暟鎹牴鎹敤絳懼悕綆楁硶榪涜璁$畻鏂扮殑絳懼悕錛岀敤鏉ヨ窡API榪斿洖鐨勭鍚嶈繘琛屾瘮杈?/div><div style="background-color: inherit;">        String signForAPIResponse = Signature.getSign(map);</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">        if(!signForAPIResponse.equals(signFromAPIResponse)){</div><div style="background-color: inherit;">            //絳懼悕楠屼笉榪囷紝琛ㄧず榪欎釜API榪斿洖鐨勬暟鎹湁鍙兘宸茬粡琚鏀逛簡</div><div style="background-color: inherit;">            Util.log("API榪斿洖鐨勬暟鎹鍚嶉獙璇佷笉閫氳繃錛屾湁鍙兘琚涓夋柟綃℃敼!!!");</div><div style="background-color: inherit;">            return false;</div><div style="background-color: inherit;">        }</div><div style="background-color: inherit;">        Util.log("鎭枩錛孉PI榪斿洖鐨勬暟鎹鍚嶉獙璇侀氳繃!!!");</div><div style="background-color: inherit;">        return true;</div><div style="background-color: inherit;">    }</div><div style="background-color: inherit;"></div><div style="background-color: inherit;">}</div><div style="background-color: inherit;"></div><div style="background-color: inherit;"></div><div style="background-color: inherit;">鍏堣鍒拌繖閲岋紝鎵鏈夊弬鏁伴兘鍑嗗濂戒簡錛屼笅涓姝ユ槸緇勬垚xml</div><div style="background-color: inherit;"></div><div style="background-color: inherit;"></div><div style="background-color: inherit;">澹版槑錛氬伐鍏風(fēng)被浠g爜鍙傝冨井淇℃敮浠樺紑鍙戠殑demo錛屾湁浜涜嚜宸卞仛浜嗗皬鏀瑰姩銆?/div></div><img src ="http://www.tkk7.com/resteater/aggbug/427248.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/resteater/" target="_blank">浼戞伅椋熷</a> 2015-09-10 15:35 <a href="http://www.tkk7.com/resteater/archive/2015/09/10/427248.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>java瑙f瀽xml鏂囦歡錛坉om4j鏂瑰紡錛?/title><link>http://www.tkk7.com/resteater/archive/2015/02/11/422872.html</link><dc:creator>浼戞伅椋熷</dc:creator><author>浼戞伅椋熷</author><pubDate>Wed, 11 Feb 2015 09:23:00 GMT</pubDate><guid>http://www.tkk7.com/resteater/archive/2015/02/11/422872.html</guid><wfw:comment>http://www.tkk7.com/resteater/comments/422872.html</wfw:comment><comments>http://www.tkk7.com/resteater/archive/2015/02/11/422872.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/resteater/comments/commentRss/422872.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/resteater/services/trackbacks/422872.html</trackback:ping><description><![CDATA[     鎽樿: java瑙f瀽xml鏂囦歡鐨勬柟寮忔湁鍑犵錛屼笅闈粙緇嶇敤dom4j鏂瑰紡瑙f瀽1銆佸厛鐪嬩竴孌祒ml鍐呭 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->  1 <configs>  2 &nb...  <a href='http://www.tkk7.com/resteater/archive/2015/02/11/422872.html'>闃呰鍏ㄦ枃</a><img src ="http://www.tkk7.com/resteater/aggbug/422872.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/resteater/" target="_blank">浼戞伅椋熷</a> 2015-02-11 17:23 <a href="http://www.tkk7.com/resteater/archive/2015/02/11/422872.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>linux鍚姩妗岄潰緋葷粺http://www.tkk7.com/resteater/archive/2015/02/11/422865.html浼戞伅椋熷浼戞伅椋熷Wed, 11 Feb 2015 03:01:00 GMThttp://www.tkk7.com/resteater/archive/2015/02/11/422865.htmlhttp://www.tkk7.com/resteater/comments/422865.htmlhttp://www.tkk7.com/resteater/archive/2015/02/11/422865.html#Feedback1http://www.tkk7.com/resteater/comments/commentRss/422865.htmlhttp://www.tkk7.com/resteater/services/trackbacks/422865.html鍚姩緋葷粺鍚庯紝娌℃湁妗岄潰錛屽彧鏄竴涓帶鍒跺彴錛屽鏋滆鍚姩妗岄潰緋葷粺錛屽涓嬫楠わ細(xì)
1銆佸惎鍔ㄧ郴緇燂紝鐧誨綍
2銆乿i /etc/inittab
3銆佸皢鏈鍚庝竴琛岀殑id:3:initdefault:涓殑3鎹㈡垚5錛屽嵆id:5:initdefault:.
4銆亀q淇濆瓨閫鍑?br />5銆侀噸鍚郴緇熷嵆鍙?br />
璇存槑錛氬鏋滃皢妗岄潰緋葷粺鍒囨崲鎴愭帶鍒跺彴錛屽弽榪囨潵灝?鎹㈡垚3閲嶅惎鍗沖彲銆?姝ゆ柟娉曞彧鍦ㄤ笂闈㈣鐨勫彂琛岀増嫻嬭瘯閫氳繃銆?img src ="http://www.tkk7.com/resteater/aggbug/422865.html" width = "1" height = "1" />

浼戞伅椋熷 2015-02-11 11:01 鍙戣〃璇勮
]]>
db2鎻掑叆絀虹疆閿欒http://www.tkk7.com/resteater/archive/2015/02/05/422770.html浼戞伅椋熷浼戞伅椋熷Thu, 05 Feb 2015 07:50:00 GMThttp://www.tkk7.com/resteater/archive/2015/02/05/422770.htmlhttp://www.tkk7.com/resteater/comments/422770.htmlhttp://www.tkk7.com/resteater/archive/2015/02/05/422770.html#Feedback0http://www.tkk7.com/resteater/comments/commentRss/422770.htmlhttp://www.tkk7.com/resteater/services/trackbacks/422770.html涓嶅厑璁稿皢 NULL 鍊艱祴緇?NOT NULL 鍒?TBSPACEID=3, TABLEID=34, COLNO=29"銆?br />
SELECT C.TABSCHEMA, C.TABNAME, C.COLNAME   FROM SYSCAT.TABLES AS T,SYSCAT.COLUMNS AS C WHERE T.TBSPACEID = 3 AND T.TABLEID = 34 AND C.COLNO = 29 AND C.TABSCHEMA = T.TABSCHEMA AND C.TABNAME = T.TABNAME

鎵懼嚭鏄摢涓鍒椾笉鑳芥彃鍏ョ┖鍊箋?br />

浼戞伅椋熷 2015-02-05 15:50 鍙戣〃璇勮
]]>
Java鑾峰彇鏍圭洰褰曪紝璇誨彇閰嶇疆鏂囦歡http://www.tkk7.com/resteater/archive/2015/01/30/422583.html浼戞伅椋熷浼戞伅椋熷Fri, 30 Jan 2015 07:01:00 GMThttp://www.tkk7.com/resteater/archive/2015/01/30/422583.htmlhttp://www.tkk7.com/resteater/comments/422583.htmlhttp://www.tkk7.com/resteater/archive/2015/01/30/422583.html#Feedback1http://www.tkk7.com/resteater/comments/commentRss/422583.htmlhttp://www.tkk7.com/resteater/services/trackbacks/422583.htmlJava鑾峰彇鏍圭洰褰曡礬寰勬湁寰堝縐嶆柟娉曪紝浣嗘槸鏍規(guī)嵁搴旂敤紼嬪簭鎵閮ㄧ講鐨勭幆澧冨拰涓棿浠朵笉鍚岋紝鑾峰彇鐨勮礬寰勫彲鑳戒篃涓嶅悓銆備笅闈㈡垜鎻愪緵涓縐嶆柟娉曪紝瑙e喅榪欎釜闂銆?br />
         String path = InterfaceConfig.class.getResource("").getPath().toString();//鑾峰彇綾繪墍鍦ㄨ礬寰?br />         if (path.contains(".jar")) {
             path = path.replace("/", File.separator);//灝?鎹㈡垚\錛屽鏋滄槸linux鐜錛岃繕鏄?
             path = path.replace("file:", "");//鍘繪帀file
             path = path.replace("classes\\", "");//鍘繪帀classes\
             if (path.startsWith("\\")) {
                 path = path.substring(1);//鍘繪帀絎竴涓猏,濡傦細(xì)銆乗D:\TongWeb...  ,鍦╨inux涓婃病鏈夎繖縐嶆儏鍐?br />             }
             path = path.split("WEB-INF")[0]+"WEB-INF"+File.separator+"classes";
        } else {
             path = InterfaceConfig.class.getResource("/").getPath().toString();//鑾峰彇鏍硅礬寰?br />        }
        File file = new File(path + File.separator + "InterfaceConfig.xml");

榪欐浠g爜浠涔堟剰鎬濆憿錛?br />1銆佺涓琛屾槸鑾峰彇InterfaceConfig.class榪欎釜綾繪墍鍦ㄧ殑璺緞錛岃繖涓狪nterfaceConfig.class鍙互鎹㈡垚浣犺繖孌典唬鐮佹墍鍦ㄧ殑綾匯?br />2銆佸垽鏂礬寰勪腑鏄惁鍖呭惈.jar錛屽氨鏄榪欐浠g爜鎵鍦ㄧ殑綾繪渶緇堟瀯寤虹殑鏃跺欐槸涓嶆槸鎵撳叆jar鍖呴噷錛屽鏋滃湪jar鍖呴噷錛屽氨鍘繪帀涓浜涘唴瀹癸紝濡俧ile: ,classes\\,
    鐒跺悗鏍規(guī)嵁WEB-INF鍒囧壊錛屽茍鎷煎嚭鏍圭洰褰曘?br />3銆佸鏋滄病鏈夋墦鍏ar鍖咃紝閭f洿綆鍗曚簡錛岀洿鎺ラ氳繃鑾峰彇鏍硅礬寰勬柟娉曞氨瑙e喅浜嗐?br />4銆佹渶鍚庤鍙朿lasses璺緞涓嬬殑InterfaceConfig.xml閰嶇疆鏂囦歡銆?br />


浼戞伅椋熷 2015-01-30 15:01 鍙戣〃璇勮
]]>
Oracle瑙﹀彂鍣ㄩ樆姝㈠垹闄よ〃鏁版嵁http://www.tkk7.com/resteater/archive/2014/12/25/421811.html浼戞伅椋熷浼戞伅椋熷Thu, 25 Dec 2014 02:15:00 GMThttp://www.tkk7.com/resteater/archive/2014/12/25/421811.htmlhttp://www.tkk7.com/resteater/comments/421811.htmlhttp://www.tkk7.com/resteater/archive/2014/12/25/421811.html#Feedback0http://www.tkk7.com/resteater/comments/commentRss/421811.htmlhttp://www.tkk7.com/resteater/services/trackbacks/421811.htmlcreate or replace trigger preventdeleted502
before delete on d502_mzdetail
for each row
begin
if deleting then raise_application_error(-200001,'涓嶅厑璁稿垹闄ゆ暟鎹?');
dbms_output.PUT_LINE('涓嶅厑璁稿垹闄ゆ暟鎹?');
end if;
end;

瑙i噴璇存槑錛歱reventdeleted502涓鴻瑙﹀彂鍣ㄥ悕縐幫紝d502_mzdetail涓鴻〃鍚嶏紝瀵逛簬琛╠502_mzdetail濡傛灉涓鏈夊垹闄ゅ姩浣滐紝椹笂鎻愮ず婧㈠嚭閿欒錛屽悓鏃舵墦鍗伴敊璇俊鎭紝閭d箞鍒犻櫎鍔ㄤ綔鍗沖埢鍋滄錛?/div>

]]>linux瀹夎f(xié)tphttp://www.tkk7.com/resteater/archive/2014/11/12/419943.html浼戞伅椋熷浼戞伅椋熷Wed, 12 Nov 2014 02:00:00 GMThttp://www.tkk7.com/resteater/archive/2014/11/12/419943.htmlhttp://www.tkk7.com/resteater/comments/419943.htmlhttp://www.tkk7.com/resteater/archive/2014/11/12/419943.html#Feedback0http://www.tkk7.com/resteater/comments/commentRss/419943.htmlhttp://www.tkk7.com/resteater/services/trackbacks/419943.html1銆佸畨瑁協(xié)tp
sudo yum install vsftpd   (娉細(xì)濡傛灉浣犵敤鐨勬槸Ubuntu錛屽懡浠わ細(xì)sudo apt-get install vsftpd)

2銆侀厤緗畍sftpd.conf
sudo vim /etc/vsftpd.conf (娉細(xì)榪欓噷鐨剉im鏄紪杈戝櫒錛屽鏋滄病鏈夊畨瑁咃紝璇峰厛sudo yum install vim瀹夎榪欎釜緙栬緫鍣紝褰撶劧涔熷彲浠ョ敤緋葷粺鑷姩鐨剉i)

#紱佹鍖垮悕璁塊棶 
anonymous_enable=NO
#鎺ュ彈鏈湴鐢ㄦ埛
local_enable=YES
#鍏佽涓婁紶
write_enable=YES
#鐢ㄦ埛鍙兘璁塊棶闄愬埗鐨勭洰褰?
chroot_local_user=YES
#璁劇疆鍥哄畾鐩綍錛屽湪緇撳熬娣誨姞銆傚鏋滀笉娣誨姞榪欎竴琛岋紝鍚勭敤鎴峰搴旇嚜宸辯殑鐩綍錛屽綋鐒惰繖涓枃浠跺す鑷繁寤?
local_root=/home/ftp

3銆佹坊鍔犵敤鎴?br />
sudo useradd -d /home/ftp -M loub 
sudo passwd loub

4銆佺粰鏂囦歡澶規(guī)巿鏉?br />
sudo chmod a-w /home/ftp 
sudo mkdir /home/ftp/upload
sudo mkdir /home/ftp/download
sudo chmod -R 777 /home/ftp/upload
sudo chmod -R 777 /home/ftp/download

5銆?br />鍛戒護(hù)錛?/span>sudo vim /etc/pam.d/vsftpd
娉ㄩ噴鎺?br />
#auth    required pam_shells.so

6銆侀噸鍚湇鍔?br />
sudo service vsftpd restart

瀹夎f(xié)tp鏈嶅姟鍣ㄥ埌榪欓噷灝卞樊涓嶅浜嗭紝鐒跺悗鍦ㄥ鎴鋒満涓婂畨瑁呬竴涓狥ileZilla杞歡錛岃緭鍏ユ湇鍔″櫒ip,鐢ㄦ埛鍚嶅拰瀵嗙爜錛岀鍙i粯璁?1灝辮浜嗐?br />濡傛灉鎯充簡瑙sftpd鏇村淇℃伅緗戜笂鏈夊緢澶氾紝浣嗘垜瑙夊緱鏈夎繖鍑犱釜姝ラ灝卞樊涓嶅浜嗭紝鑳界敤灝辮錛屾病蹇呰鎼炴竻妤氬師鐞嗐?br />
鎴戠敤ftp閬囧埌鐨勯棶棰橈紝姣忔褰撴垜鍚姩浜咰entOS鍚庯紝鐒跺悗鐢‵ileZilla榪炰笂鏈嶅姟鍣紝灝辨嫆緇濊闂紝鍥犱負(fù)CentOS涓婄殑ftp娌℃湁鍚姩錛屼簬鏄緭鍏?br />sudo /etc/init.d/vsftpd start 灝變細(xì)鎶ラ敊錛?00 oops :connot read config file....
榪欐槸鍥犱負(fù)娌℃湁嬋媧籿sftpd,榪樿璁劇疆榪愯綰у埆錛岄偅涔堝氨鐢╮oot鐢ㄦ埛鐧誨綍
鍛戒護(hù)錛歴u root
鍛戒護(hù)錛歝hkconfig --level 35 vsftpd on
鍛戒護(hù)錛歴ervice vsftpd restart
灝卞彲浠ョ敤FileZilla榪炰笂浜嗐?/pre>


]]> 主站蜘蛛池模板: 亚洲伊人久久大香线蕉苏妲己| 亚洲女同成人AⅤ人片在线观看| 成在人线AV无码免费| 四虎成人免费观看在线网址| 国产老女人精品免费视频| 亚洲午夜无码片在线观看影院猛 | 四虎永久在线精品免费观看地址 | 日本在线免费观看| 无遮免费网站在线入口| 久久国产亚洲精品| 色妞www精品视频免费看| 在线观看免费黄网站| 曰批视频免费40分钟试看天天| 成年女人免费视频播放77777| 亚洲成av人在片观看| 亚洲成色999久久网站| 亚洲欧美一区二区三区日产| 久久久WWW免费人成精品| 在线免费观看亚洲| 国产免费69成人精品视频| 亚洲av永久无码精品表情包| 亚洲中文字幕一二三四区苍井空| 成人免费网站久久久| 久久久久久国产精品免费无码 | 99免费观看视频| 国产高清免费的视频| 狠狠色伊人亚洲综合成人| 亚洲欧洲日韩极速播放| 高清永久免费观看| 成年人免费网站在线观看| 国产成A人亚洲精V品无码| 亚洲另类无码专区丝袜| 日韩成人免费视频| 四虎影视永久免费视频观看| 久久水蜜桃亚洲av无码精品麻豆| 香港经典a毛片免费观看看| 99免费观看视频| 精品亚洲视频在线观看| 亚洲一区无码中文字幕乱码| 国产精品九九久久免费视频| 毛片高清视频在线看免费观看|