Java的微信开发中使用XML格式和JSON格式数据的详解及实例
这篇文章主要介绍了Java微信开发中使用XML格式和JSON格式数据的示例,注意一下json-lib所需要的jar包,需要的朋友可以参考下
XML微信XML消息model定义: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这里我们使用json-lib,注意一下需要以下几个jar包的支持:
json-lib-2.4-jdk15.jar
commons-logging-1.1.3.jar
ezmorph-1.0.6.jar
commons-lang-2.4.jar
commons-collections.jar
commons-beanutils-1.8.0.jar
以下是简单的AccessToken类,返回String类型的access_tokenpackage 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 blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}//System.out.println(temp);return temp; }}额 大体就是这样以上就是Java的微信开发中使用XML格式和JSON格式数据的详解及实例的详细内容,更多请关注小潘博客其它相关文章!