前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java微信公众平台开发(四)--回复消息的分类及实体的创建

Java微信公众平台开发(四)--回复消息的分类及实体的创建

作者头像
用户2417870
发布2019-09-18 11:36:05
5970
发布2019-09-18 11:36:05
举报
文章被收录于专栏:g歌德a

前面有说道对接收到微信服务器消息后对消息的分类,当时主要分为普通消息和事件消息,这里我们要讲述的是我们在给用户回复的消息类型,在这里也可以大致分为两类:一种为不需要上传资源到微信服务器的这里成为【普通消息回复】;还有一种需要上传资源到微信服务器的这里称为【多媒体消息回复】!

  • 普通消息回复:回复文本消息/回复图文消息
  • 多媒体消息回复:回复图片消息/回复语音消息/回复视频消息/回复音乐消息

(一)回复消息基类的实现

代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:42:43
 5 * @description :
 6 */
 7 public class BaseMessage {  
 8     // 接收方帐号(收到的OpenID)   
 9     private String ToUserName;  
10     // 开发者微信号   
11     private String FromUserName;  
12     // 消息创建时间 (整型)   
13     private long CreateTime;  
14     // 消息类型(text/music/news)   
15     private String MsgType;  
16       
17    
18     public String getToUserName() {  
19         return ToUserName;  
20     }  
21    
22     public void setToUserName(String toUserName) {  
23         ToUserName = toUserName;  
24     }  
25    
26     public String getFromUserName() {  
27         return FromUserName;  
28     }  
29    
30     public void setFromUserName(String fromUserName) {  
31         FromUserName = fromUserName;  
32     }  
33    
34     public long getCreateTime() {  
35         return CreateTime;  
36     }  
37    
38     public void setCreateTime(long createTime) {  
39         CreateTime = createTime;  
40     }  
41    
42     public String getMsgType() {  
43         return MsgType;  
44     }  
45    
46     public void setMsgType(String msgType) {  
47         MsgType = msgType;  
48     }  
49 }

(二)普通消息回复实体实现

①文本消息消息体

代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:47:49
 5 * @description :
 6 */
 7 public class VoiceMessage {
 8     
 9     private Voice Voice;
10  
11     public Voice getVoice() {
12         return Voice;
13     }
14  
15     public void setVoice(Voice voice) {
16         Voice = voice;
17     }
18  
19  
20      
21  
22 }

②图文/多图文消息实现

代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:43:36
 5 * @description :
 6 */
 7 public class Article {  
 8     // 图文消息名称   
 9     private String Title;  
10     // 图文消息描述   
11     private String Description;  
12     // 图片链接,支持JPG、PNG格式,较好的效果为大图640*320,小图80*80,
13     private String PicUrl;  
14     // 点击图文消息跳转链接   
15     private String Url;  
16    
17     public String getTitle() {  
18         return Title;  
19     }  
20    
21     public void setTitle(String title) {  
22         Title = title;  
23     }  
24    
25     public String getDescription() {  
26         return null == Description ? "" : Description;  
27     }  
28    
29     public void setDescription(String description) {  
30         Description = description;  
31     }  
32    
33     public String getPicUrl() {  
34         return null == PicUrl ? "" : PicUrl;  
35     }  
36    
37     public void setPicUrl(String picUrl) {  
38         PicUrl = picUrl;  
39     }  
40    
41     public String getUrl() {  
42         return null == Url ? "" : Url;  
43     }  
44    
45     public void setUrl(String url) {  
46         Url = url;  
47     }  
48    
49 }
代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 
 3 import java.util.List;
 4 
 5 /**
 6 * @author gede
 7 * @version date:2019年5月23日 下午9:44:12
 8 * @description :
 9 */
10 public class NewsMessage extends BaseMessage {  
11     // 图文消息个数,限制为10条以内   
12     private int ArticleCount;  
13     // 多条图文消息信息,默认第一个item为大图   
14     private List<Article> Articles;  
15    
16     public int getArticleCount() {  
17         return ArticleCount;  
18     }  
19    
20     public void setArticleCount(int articleCount) {  
21         ArticleCount = articleCount;  
22     }  
23    
24     public List<Article> getArticles() {  
25         return Articles;  
26     }  
27    
28     public void setArticles(List<Article> articles) {  
29         Articles = articles;  
30     }  
31 }

(三)多媒体消息回复消息体实现

①回复图片消息实体

代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:45:16
 5 * @description :
 6 */
 7 public class Image {
 8      
 9     private String MediaId;
10  
11     public String getMediaId() {
12         return MediaId;
13     }
14  
15     public void setMediaId(String mediaId) {
16         MediaId = mediaId;
17     }
18      
19 }
代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:45:39
 5 * @description :
 6 */
 7 public class ImageMessage {
 8     
 9     private Image Image;
10  
11     public Image getImage() {
12         return Image;
13     }
14  
15     public void setImage(Image image) {
16         Image = image;
17     }
18      
19  
20 }

②回复音乐消息实体

代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:46:08
 5 * @description :
 6 */
 7 public class Music {  
 8     // 音乐名称   
 9     private String Title;  
10     // 音乐描述   
11     private String Description;  
12     // 音乐链接   
13     private String MusicUrl;  
14     // 高质量音乐链接,WIFI环境优先使用该链接播放音乐   
15     private String HQMusicUrl;
16      
17     private String ThumbMediaId; //缩略图的媒体id
18    
19     public String getThumbMediaId() {
20         return ThumbMediaId;
21     }
22  
23     public void setThumbMediaId(String thumbMediaId) {
24         ThumbMediaId = thumbMediaId;
25     }
26  
27     public String getTitle() {  
28         return Title;  
29     }  
30    
31     public void setTitle(String title) {  
32         Title = title;  
33     }  
34    
35     public String getDescription() {  
36         return Description;  
37     }  
38    
39     public void setDescription(String description) {  
40         Description = description;  
41     }  
42    
43     public String getMusicUrl() {  
44         return MusicUrl;  
45     }  
46    
47     public void setMusicUrl(String musicUrl) {  
48         MusicUrl = musicUrl;  
49     }  
50    
51     public String getHQMusicUrl() {  
52         return HQMusicUrl;  
53     }  
54    
55     public void setHQMusicUrl(String musicUrl) {  
56         HQMusicUrl = musicUrl;  
57     }  
58    
59 }
代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:46:28
 5 * @description :
 6 */
 7 public class MusicMessage extends BaseMessage {  
 8     // 音乐   
 9     private Music Music;  
10    
11     public Music getMusic() {  
12         return Music;  
13     }  
14    
15     public void setMusic(Music music) {  
16         Music = music;  
17     }  
18 }

③回复视频消息实体

代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:46:50
 5 * @description :
 6 */
 7 public class Video {
 8      
 9     private String MediaId;
10     private String Title;
11     private String Description;
12  
13     public String getTitle() {
14         return Title;
15     }
16  
17     public void setTitle(String title) {
18         Title = title;
19     }
20  
21     public String getDescription() {
22         return Description;
23     }
24  
25     public void setDescription(String description) {
26         Description = description;
27     }
28  
29     public String getMediaId() {
30         return MediaId;
31     }
32  
33     public void setMediaId(String mediaId) {
34         MediaId = mediaId;
35     }
36  
37 }
代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:47:10
 5 * @description :
 6 */
 7 public class VideoMessage {
 8     
 9     private Video Video;
10  
11     public Video getVideo() {
12         return Video;
13     }
14  
15     public void setVideo(Video video) {
16         Video = video;
17     }
18  
19  
20 }

④回复语音消息实体

代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:47:27
 5 * @description :
 6 */
 7 public class Voice {
 8      
 9     private String MediaId;
10      
11     public String getMediaId() {
12         return MediaId;
13     }
14  
15     public void setMediaId(String mediaId) {
16         MediaId = mediaId;
17     }
18      
19 }
代码语言:javascript
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:47:49
 5 * @description :
 6 */
 7 public class VoiceMessage {
 8     
 9     private Voice Voice;
10  
11     public Voice getVoice() {
12         return Voice;
13     }
14  
15     public void setVoice(Voice voice) {
16         Voice = voice;
17     }
18  
19  
20      
21  
22 }

那么到这里回复消息类型的划分和实体的具体实现代码就基本编写完成了,在这些新增实体加入后我们项目的项目结构大致如下:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档