微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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_token

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; } }

额 大体就是这样

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐