最新赞助活动温馨提示:自愿赞助服务器费用,学生和没有工作的整站资源免费下载!
头像

基于Java的微信公众号Demo代码即可进行极速开发

来源:http://erdangjiade.com/source/669.html 沐浴春风 2019-07-23 20:29浏览(775)

基于Java的微信公众号Demo代码即可进行极速开发
分类: 布局: 颜色:Java源码 
查看演示

加我微信,拉你进VIP群学习:

下载资源 下载积分: 500 积分

0、请不要问“在不在”之类的问题,有问题直接问!1、学生或暂时没有工作的童鞋,整站资源免费下载!2、¥9.9充值终身VIP会员,加我微信,826096331 拉你进VIP群学习!3、程序员加油,技术改变世界。 在线 充值

基于Java的微信公众号Demo代码即可进行极速开发

 maven 坐标

	com.jfinal	jfinal-weixin	2.4

1、WeixinConfig配置

详情请见http://git.oschina.net/jfinal/jfinal-weixin/wikis/JFinal-weixin%E4%B8%AD%E7%9A%84WeixinConfig%E9%85%8D%E7%BD%AE" style="box-sizing: border-box; background: transparent; color: rgb(9, 94, 171); text-decoration-line: none; cursor: pointer; overflow-wrap: break-word;">JFinal weixin中的WeixinConfig配置

2、WeixinMsgController

public class WeixinMsgController extends MsgController {	protected void processInTextMsg(InTextMsg inTextMsg) {		String msgContent = inTextMsg.getContent().trim();		// 帮助提示		if ("help".equalsIgnoreCase(msgContent)) {			OutTextMsg outMsg = new OutTextMsg(inTextMsg);			outMsg.setContent(helpStr);			render(outMsg);		}		// 图文消息测试		else if ("news".equalsIgnoreCase(msgContent)) {			OutNewsMsg outMsg = new OutNewsMsg(inTextMsg);			outMsg.addNews("图文消息title", "图文消息description", "图文消息片 url", "图文消息 url");			render(outMsg);		}		// 音乐消息测试		else if ("music".equalsIgnoreCase(msgContent)) {			OutMusicMsg outMsg = new OutMusicMsg(inTextMsg);			outMsg.setTitle("Day By Day");			outMsg.setDescription("建议在 WIFI 环境下流畅欣赏此音乐");			outMsg.setMusicUrl("http://www.jfinal.com/DayByDay-T-ara.mp3");			outMsg.setHqMusicUrl("http://www.jfinal.com/DayByDay-T-ara.mp3");			outMsg.setFuncFlag(true);			render(outMsg);		}		else if ("美女".equalsIgnoreCase(msgContent)) {			OutNewsMsg outMsg = new OutNewsMsg(inTextMsg);			outMsg.addNews("秀色可餐", "JFinal Weixin 极速开发就是这么爽,有木有 ^_^", "http://mmbiz.qpic.cn/mmbiz/zz3Q6WSrzq2GJLC60ECD7rE7n1cvKWRNFvOyib4KGdic3N5APUWf4ia3LLPxJrtyIYRx93aPNkDtib3ADvdaBXmZJg/0", "http://mp.weixin.qq.com/s?__biz=MjM5ODAwOTU3Mg==&mid=200987822&idx=1&sn=7eb2918275fb0fa7b520768854fb7b80#rd");			render(outMsg);		}		// 其它文本消息直接返回原值 + 帮助提示		else {			OutTextMsg outMsg = new OutTextMsg(inTextMsg);			outMsg.setContent("\t文本消息已成功接收,内容为: " + inTextMsg.getContent() + "\n\n" + helpStr);			render(outMsg);		}	}		protected void processInImageMsg(InImageMsg inImageMsg) {		OutImageMsg outMsg = new OutImageMsg(inImageMsg);		// 将刚发过来的图片再发回去		outMsg.setMediaId(inImageMsg.getMediaId());		render(outMsg);	}		protected void processInVoiceMsg(InVoiceMsg inVoiceMsg) {		OutVoiceMsg outMsg = new OutVoiceMsg(inVoiceMsg);		// 将刚发过来的语音再发回去		outMsg.setMediaId(inVoiceMsg.getMediaId());		render(outMsg);	}		protected void processInVideoMsg(InVideoMsg inVideoMsg) {		/* 腾讯 api 有 bug,无法回复视频消息,暂时回复文本消息代码测试		OutVideoMsg outMsg = new OutVideoMsg(inVideoMsg);		outMsg.setTitle("OutVideoMsg 发送");		outMsg.setDescription("刚刚发来的视频再发回去");		// 将刚发过来的视频再发回去,经测试证明是腾讯官方的 api 有 bug,待 api bug 却除后再试		outMsg.setMediaId(inVideoMsg.getMediaId());		render(outMsg);		*/		OutTextMsg outMsg = new OutTextMsg(inVideoMsg);		outMsg.setContent("\t视频消息已成功接收,该视频的 mediaId 为: " + inVideoMsg.getMediaId());		render(outMsg);	}		protected void processInLocationMsg(InLocationMsg inLocationMsg) {		OutTextMsg outMsg = new OutTextMsg(inLocationMsg);		outMsg.setContent("已收到地理位置消息:" +							"\nlocation_X = " + inLocationMsg.getLocation_X() +							"\nlocation_Y = " + inLocationMsg.getLocation_Y() + 							"\nscale = " + inLocationMsg.getScale() +							"\nlabel = " + inLocationMsg.getLabel());		render(outMsg);	}		protected void processInLinkMsg(InLinkMsg inLinkMsg) {		OutNewsMsg outMsg = new OutNewsMsg(inLinkMsg);		outMsg.addNews("链接消息已成功接收", "链接使用图文消息的方式发回给你,还可以使用文本方式发回。点击图文消息可跳转到链接地址页面,是不是很好玩 :)" , "http://mmbiz.qpic.cn/mmbiz/zz3Q6WSrzq1ibBkhSA1BibMuMxLuHIvUfiaGsK7CC4kIzeh178IYSHbYQ5eg9tVxgEcbegAu22Qhwgl5IhZFWWXUw/0", inLinkMsg.getUrl());		render(outMsg);	}		protected void processInFollowEvent(InFollowEvent inFollowEvent) {		OutTextMsg outMsg = new OutTextMsg(inFollowEvent);		outMsg.setContent("感谢关注 JFinal Weixin 极速开发,为您节约更多时间,去陪恋人、家人和朋友 :) \n\n\n " + helpStr);		// 如果为取消关注事件,将无法接收到传回的信息		render(outMsg);	}		protected void processInQrCodeEvent(InQrCodeEvent inQrCodeEvent) {		OutTextMsg outMsg = new OutTextMsg(inQrCodeEvent);		outMsg.setContent("processInQrCodeEvent() 方法测试成功");		render(outMsg);	}		protected void processInLocationEvent(InLocationEvent inLocationEvent) {		OutTextMsg outMsg = new OutTextMsg(inLocationEvent);		outMsg.setContent("processInLocationEvent() 方法测试成功");		render(outMsg);	}		protected void processInMenuEvent(InMenuEvent inMenuEvent) {		OutTextMsg outMsg = new OutTextMsg(inMenuEvent);		outMsg.setContent("processInMenuEvent() 方法测试成功");		render(outMsg);	}		protected void processInSpeechRecognitionResults(InSpeechRecognitionResults inSpeechRecognitionResults) {		OutTextMsg outMsg = new OutTextMsg(inSpeechRecognitionResults);		outMsg.setContent("processInSpeechRecognitionResults() 方法测试成功");		render(outMsg);	}}

DemoController 通过继承自 WeixinController 便拥有了接收消息和发送消息的便利方法

3、WeixinApiController

public class WeixinApiController extends ApiController {	public void index() {		render("/api/index.html");	}		/**	 * 获取公众号菜单	 */	public void getMenu() {		ApiResult apiResult = MenuApi.getMenu();		if (apiResult.isSucceed())			renderText(apiResult.getJson());		else			renderText(apiResult.getErrorMsg());	}		/**	 * 获取公众号关注用户	 */	public void getFollowers() {		ApiResult apiResult = UserApi.getFollows();		renderText(apiResult.getJson());	}}

通过调用 MenuApi、UserApi 等 Api 的相关方法即可获取封装成 ApiResult 对象的结果,使用 render 系列方法即可快捷输出结果

4、非Maven用户得到所有依赖 jar 包两种方法

  • 将项目导入eclipse jee中,使用 export 功能导出 war包,其中的 WEB-INF/lib 下面会自动生成 jar 包

  • 让使用 maven 的朋友使用 mvn package 打出 war包,其中的 WEB-INF/lib 下面会自动生成 jar 包

  • 以上两种方法注意要先将pom.xml中的导出类型设置为 war,添加 war 内容进去即可

  • 依赖jackson或fastjson

5、jar包依赖详细说明

详见请见http://git.oschina.net/jfinal/jfinal-weixin/wikis/JFinal-weixin-1.6-Jar%E4%BE%9D%E8%B5%96" style="box-sizing: border-box; background: transparent; color: rgb(9, 94, 171); text-decoration-line: none; cursor: pointer; overflow-wrap: break-word;">JFinal weixin Jar依赖


声明:本文为原创文章,如需转载,请注明来源erdangjiade.com并保留原文链接:https://www.erdangjiade.com/source/669.html
评论1
头像

友情提示:垃圾评论一律封号 加我微信:826096331拉你进VIP群学习群

  • 头像 沙发
    07-26 15:46
    慧风赵海东
    这个源码怎么样?里面都能点击吗?
1 2