Xml
Definición del modelo de mensaje WeChat XML:
paquete cn.wx.server; importar 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 21 de mayo de 2014 a las 2:13:27 pm */clase pública xmlmsg {// Mensaje normal Variable Basic String TousName; Cadena fromUsername; String CreateTimeMe; Cadena msgtype; Contenido de cadena; Cadena msgid; // Event Push Variable String Event; // Elemento de menú personalizado String EventKey; public String getEventKey () {return EventKey; } public void setEventKey (String EventKey) {eventKey = eventKey; } public xmlmsg (String Str) lanza DocumentException {document doc = documentHelper.parsetext (str); Elemento root = doc.getRootElement (); this.TouserName = root.ElementText ("Tousername"); this.FromUSername = root.ElementText ("fromUsername"); this.CreateTime = root.ElementText ("CreateTimeMe"); this.msgtype = root.elementText ("msgtype"); this.content = root.elementText ("contenido"); this.msgid = root.elementText ("msgid"); this.event = root.elementText ("evento"); this.eventKey = root.ElementText ("EventKey"); } public String getEvent () {Evento de retorno; } public void setEvent (evento de cadena) {event = event; } public String getTousername () {return tousername; } public void setTousEname (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
Aquí usamos JSON-LIB, tenga en cuenta que se requieren los siguientes paquetes JAR:
La siguiente es una clase simple de acceso de acceso que devuelve el tipo de cadena access_token de cadena
paquete 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.url; import java.net.urlconnection; importar net.sf.json.jsonObject; Public Class AccessToken { / ** * Según la información de registro, los parámetros obtenidos, envíen una solicitud GET para obtener accesstkoen * @author lpe234 * @time 2014-5-21 00:52:15 * / string appid = "xxxxxxxxxxxxxxxxx"; String AppSecret = "xxxxxxxxxxxxxxxx"; // Solo tiene una cuenta de servicio WeChat o una cuenta de suscripción que se aplica para una cuenta de prueba. . . Cadena preUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s"; String tempurl = string.format (preurl, appid, appSecret);/** test* public static void main (string [] args) {* accessToken as = new AccessToken ();* System.out.println (as.get ());*}*/// return String Tipo Access_tokoken public String Get () {String Temp = Null; temp = getJson (); JsonObject j = jsonObject.FromObject (temp); temp = J.GetString ("access_token"); //System.out.println(temp); regresar temp; } // Obtener el servidor WX Devuelve datos JSON, privado llame internamente la cadena privada getjson () {string temp = null; intente {url url = new url (tempurl); Urlconnection conn = url.openconnection (); InputStreamReader isr = new InputStreamReader (conn.getInputStream ()); BufferedReader BR = New BufferedReader (ISR); temp = br.readline (); } Catch (MalFormedUrexception e) {// TODO Auto Generado Bloque E.PrintStackTrace (); } Catch (ioException e) {// tODO Auto Generated BLOCK E.PrintStackTRace (); } //System.out.println(temp); regresar temp; }}Bueno, eso es básicamente eso