消息回复,实现与用户交互
一、消息接收的数据与回复数据结构分析
1.接收的数据结构
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>1348831860</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[this is a test]]></Content>
<MsgId>1234567890123456</MsgId>
</xml>
2.发送消息的数据结构
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>12345678</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[你好]]></Content>
</xml>
思路的分析:需要将微信平台发送的xml格式请求信息解析,后台处理已xml的格式返回给微信公众平台;后期的语音消息,图片消息都是类似的思路。
根据xml格式,分析数据结构,构建bean类(做了一个调整,建立一个基类,方便后期的语音,图片的扩展)
/**
*
* 类名称: BaseMessage
* 类描述: 回复消息的基类
* @author yuanjun
* 创建时间:2017年12月8日上午11:38:11
*/
public class BaseMessage {
protected String ToUserName;
protected String FromUserName;
protected long CreateTime;
protected String MsgType;
public BaseMessage() {
super();
}
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 long getCreateTime() {
return CreateTime;
}
public void setCreateTime(long createTime)