前面有說道對接收到微信服務器消息后對消息的分類,當時主要分為普通消息和事件消息,這里我們要講述的是我們在給用戶回復的消息類型,在這里也可以大致分為兩類:一種為不需要上傳資源到微信服務器的這里成為【普通消息回復】;還有一種需要上傳資源到微信服務器的這里稱為【多媒體消息回復】!
(一)回復消息基類的實現(xiàn)
package com.cuiyongzhi.wechat.message.resp;
/**
* ClassName: BaseMessage
* @Description: 返回消息體-基本消息
* @author dapengniao
* @date 2016 年 3 月 7 日 下午 3:16:57
*/
public class BaseMessage {
// 接收方帳號(收到的 OpenID)
private String ToUserName;
// 開發(fā)者微信號
private String FromUserName;
// 消息創(chuàng)建時間 (整型)
private long CreateTime;
// 消息類型(text/music/news)
private String MsgType;
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) {
CreateTime = createTime;
}
public String getMsgType() {
return MsgType;
}
public void setMsgType(String msgType) {
MsgType = msgType;
}
}
(二)普通消息回復實體實現(xiàn)
1.文本消息消息體
package com.cuiyongzhi.wechat.message.resp;
/**
* ClassName: TextMessage
* @Description: 文本消息消息體
* @author dapengniao
* @date 2016 年 3 月 7 日 下午 3:54:22
*/
public class TextMessage extends BaseMessage {
// 回復的消息內容
private String Content;
public String getContent() {
return Content;
}
public void setContent(String content) {
Content = content;
}
}
2.圖文/多圖文消息實現(xiàn)
package com.cuiyongzhi.wechat.message.resp;
/**
* ClassName: Article
* @Description: 圖文消息體
* @author dapengniao
* @date 2016 年 3 月 7 日 下午 3:16:28
*/
public class Article {
// 圖文消息名稱
private String Title;
// 圖文消息描述
private String Description;
// 圖片鏈接,支持 JPG、PNG 格式,較好的效果為大圖 640*320,小圖 80*80,
private String PicUrl;
// 點擊圖文消息跳轉鏈接
private String Url;
public String getTitle() {
return Title;
}
public void setTitle(String title) {
Title = title;
}
public String getDescription() {
return null == Description ? "" : Description;
}
public void setDescription(String description) {
Description = description;
}
public String getPicUrl() {
return null == PicUrl ? "" : PicUrl;
}
public void setPicUrl(String picUrl) {
PicUrl = picUrl;
}
public String getUrl() {
return null == Url ? "" : Url;
}
public void setUrl(String url) {
Url = url;
}
}
package com.cuiyongzhi.wechat.message.resp;
import java.util.List;
/**
* ClassName: NewsMessage
* @Description: 多圖文消息
* @author dapengniao
* @date 2016 年 3 月 7 日 下午 3:52:18
*/
public class NewsMessage extends BaseMessage {
// 圖文消息個數(shù),限制為 10 條以內
private int ArticleCount;
// 多條圖文消息信息,默認第一個 item 為大圖
private List<Article> Articles;
public int getArticleCount() {
return ArticleCount;
}
public void setArticleCount(int articleCount) {
ArticleCount = articleCount;
}
public List<Article> getArticles() {
return Articles;
}
public void setArticles(List<Article> articles) {
Articles = articles;
}
}
(三)多媒體消息回復消息體實現(xiàn)
1.回復圖片消息實體
package com.cuiyongzhi.wechat.message.resp;
/**
* ClassName: Image
* @Description: 圖片回復消息體
* @author dapengniao
* @date 2016 年 3 月 8 日 下午 5:55:18
*/
public class Image {
private String MediaId;
public String getMediaId() {
return MediaId;
}
public void setMediaId(String mediaId) {
MediaId = mediaId;
}
}
package com.cuiyongzhi.wechat.message.resp;
/**
* ClassName: ImageMessage
* @Description: 圖片消息
* @author dapengniao
* @date 2016 年 3 月 8 日 下午 5:58:10
*/
public class ImageMessage {
private Image Image;
public Image getImage() {
return Image;
}
public void setImage(Image image) {
Image = image;
}
}
2.回復音樂消息實體
package com.cuiyongzhi.wechat.message.resp;
/**
* ClassName: Music
* @Description: 音樂消息消息體
* @author dapengniao
* @date 2016 年 3 月 7 日 下午 3:54:00
*/
public class Music {
// 音樂名稱
private String Title;
// 音樂描述
private String Description;
// 音樂鏈接
private String MusicUrl;
// 高質量音樂鏈接,WIFI 環(huán)境優(yōu)先使用該鏈接播放音樂
private String HQMusicUrl;
private String ThumbMediaId; //縮略圖的媒體 id
public String getThumbMediaId() {
return ThumbMediaId;
}
public void setThumbMediaId(String thumbMediaId) {
ThumbMediaId = thumbMediaId;
}
public String getTitle() {
return Title;
}
public void setTitle(String title) {
Title = title;
}
public String getDescription() {
return Description;
}
public void setDescription(String description) {
Description = description;
}
public String getMusicUrl() {
return MusicUrl;
}
public void setMusicUrl(String musicUrl) {
MusicUrl = musicUrl;
}
public String getHQMusicUrl() {
return HQMusicUrl;
}
public void setHQMusicUrl(String musicUrl) {
HQMusicUrl = musicUrl;
}
}
package com.cuiyongzhi.wechat.message.resp;
/**
* ClassName: MusicMessage
* @Description: 音樂消息
* @author dapengniao
* @date 2016 年 3 月 7 日 下午 3:53:38
*/
public class MusicMessage extends BaseMessage {
// 音樂
private Music Music;
public Music getMusic() {
return Music;
}
public void setMusic(Music music) {
Music = music;
}
}
3.回復視頻消息實體
package com.cuiyongzhi.wechat.message.resp;
/**
* ClassName: Video
* @Description: 視頻消息體
* @author dapengniao
* @date 2016 年 3 月 8 日 下午 6:05:45
*/
public class Video {
private String MediaId;
private String Title;
private String Description;
public String getTitle() {
return Title;
}
public void setTitle(String title) {
Title = title;
}
public String getDescription() {
return Description;
}
public void setDescription(String description) {
Description = description;
}
public String getMediaId() {
return MediaId;
}
public void setMediaId(String mediaId) {
MediaId = mediaId;
}
}
package com.cuiyongzhi.wechat.message.resp;
/**
* ClassName: VideoMessage
* @Description: 視頻消息
* @author dapengniao
* @date 2016 年 3 月 8 日 下午 6:06:29
*/
public class VideoMessage {
private Video Video;
public Video getVideo() {
return Video;
}
public void setVideo(Video video) {
Video = video;
}
}
4.回復語音消息實體
package com.cuiyongzhi.wechat.message.resp;
/**
* ClassName: Voice
* @Description: 語音消息體
* @author dapengniao
* @date 2016 年 3 月 8 日 下午 6:02:29
*/
public class Voice {
private String MediaId;
public String getMediaId() {
return MediaId;
}
public void setMediaId(String mediaId) {
MediaId = mediaId;
}
}
package com.cuiyongzhi.wechat.message.resp;
/**
* ClassName: VoiceMessage
* @Description: 語音消息
* @author dapengniao
* @date 2016 年 3 月 8 日 下午 6:02:13
*/
public class VoiceMessage {
private Voice Voice;
public Voice getVoice() {
return Voice;
}
public void setVoice(Voice voice) {
Voice = voice;
}
}
那么到這里回復消息類型的劃分和實體的具體實現(xiàn)代碼就基本編寫完成了,在這些新增實體加入后我們項目的項目結構大致如下:
http://wiki.jikexueyuan.com/project/java-wechat/images/22.png" alt="" />
下篇將講述【普通消息體的回復】實現(xiàn),感謝你的翻閱,如有疑問可以留言討論!