この記事では、Java WeChat 開発での XML 形式と JSON 形式のデータの使用例を主に紹介します。必要な場合は、json-lib に必要な jar パッケージに注目してください。 WeChat XML メッセージ
モデル 定義: package cn.wx.server;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
/**
* @title cn.wx.serverXMLMsg.java
* @todo TODO
* @author lpe234
* @time 2014年5月21日下午2:13:27
*/
public class XMLMsg {
//普通消息基本变量
String ToUserName;
String FromUserName;
String CreateTime;
String MsgType;
String Content;
String MsgId;
//事件推送变量
String Event;
//自定义菜单项
String EventKey;
public String getEventKey() {
return EventKey;
}
public void setEventKey(String eventKey) {
EventKey = eventKey;
}
public XMLMsg(String str) throws DocumentException {
Document doc = DocumentHelper.parseText(str);
Element root = doc.getRootElement();
this.ToUserName = root.elementText("ToUserName");
this.FromUserName = root.elementText("FromUserName");
this.CreateTime = root.elementText("CreateTime");
this.MsgType = root.elementText("MsgType");
this.Content = root.elementText("Content");
this.MsgId = root.elementText("MsgId");
this.Event = root.elementText("Event");
this.EventKey = root.elementText("EventKey");
}
public String getEvent() {
return Event;
}
public void setEvent(String event) {
Event = event;
}
public String getToUserName() {
return ToUserName;
}
public void setToUserName(String toUserName) {
ToUserName = toUserName;
}
public String getFromUserName() {
return FromUserName;
}
public void setFromUserName(String fromUserName) {
FromUserName = fromUserName;
}
public String getCreateTime() {
return CreateTime;
}
public void setCreateTime(String createTime) {
CreateTime = createTime;
}
public String getMsgType() {
return MsgType;
}
public void setMsgType(String msgType) {
MsgType = msgType;
}
public String getContent() {
return Content;
}
public void setContent(String content) {
Content = content;
}
public String getMsgId() {
return MsgId;
}
public void setMsgId(String msgId) {
MsgId = msgId;
}
}
json-lib-2.4-jdk15.jar
commons -logging-1.1.3.jar
ezmorph-1.0.6.jar
commons-
langcommons -beanutils -1.8 .0.jar
以下は、String 型の access_token を返す単純な AccessToken クラスです
package cn.wx.server; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; import net.sf.json.JSONObject; public class AccessToken { /** * 根据注册信息,获得的参数,提交get请求,获得accessTkoen * @author lpe234 * @time 2014-5-21 00:52:15 */ String appID = "XXXXXXXXXXXXXX"; String appsecret = "XXXXXXXXXXXXXXXXX";//微信服务号或者申请测试账号的订阅号才有。。。 String preUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s"; String tempUrl = String.format(preUrl, appID, appsecret); /** 测试 * public static void main(String[] args) { * AccessToken as = new AccessToken(); * System.out.println(as.get()); * } */ //返回String类型access_token public String get() { String temp = null; temp = getJSON(); JSONObject j = JSONObject.fromObject(temp); temp = j.getString("access_token"); //System.out.println(temp); return temp; } // 获取wx服务器返回JSON数据,private内部调用 private String getJSON() { String temp = null; try { URL url = new URL(tempUrl); URLConnection conn = url.openConnection(); InputStreamReader isr = new InputStreamReader(conn.getInputStream()); BufferedReader br = new BufferedReader(isr); temp = br.readLine(); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } //System.out.println(temp); return temp; } }
以上がJava での WeChat 開発における XML 形式と JSON 形式のデータの詳細な説明と使用例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。