JAVA微信公众号开发入门

好久没进博客,最近应某人的要求,要每周写一篇博客,故此今天就把我这周刚学的微信公众号开发的知识在此总结总结,以供后人查阅。我写博客都是简要白话文,勿喷。

1.为什么要学微信公众号开发

微信的用户量庞大,微信公众号的完善和不断的开放力度,企业市场对公众号开发的需求不断增加

2.如何搭建微信开发平台

开发工具什么的就不说了,因为微信是要外网访问的,所有你必须有个网上的服务器资源,而且你必须申请一个微信公众号。

2.1申请微信公众号

公众号有3种:订阅号,服务号,企业号

区别是企业号适合内部人使用,因为它只有通过后台导入的微信号才能关注,不限群发次数;服务号和订阅号的不同就是,服务号一个月才群发一次,但是可以在最近联系人显示,而订阅号只能跟一群订阅号显示在一个订阅号分组里,但是貌似可以群发4次每月。

从名字可以知道,订阅号倾向于个人和组织,服务号和企业倾向于公司企业。

顺便提下,要通过微信认证之后才会有更多功能,微信认证就是一个实名认证。费用目前是300元。微信支付申请费用1万人民币。

个人订阅不需要认证,但是功能很少,连自定义菜单功能都没有,不过你可以通过官方提供的测试号实现除微信支付外的所有功能。

申请成功后,你可以设置公众号的微信号,头像等等。

2.2申请服务器资源

如果自己有外网域名或者IP网站,可以无视了。

申请服务器目前常用的是云计算的服务,比如新浪的SAE,百度的BAE和阿里云,不过貌似都要收费。

拿SAE来举例,进入SAE官方网站,用新浪微博的账号登陆,在个人账号里面有个实名认证,输入身份证号,上传手拿身份证的图片提交认证,然后等3个工作日就行。

认证成功后,点击控制台菜单,新增应用,选择jdk1.6的服务,经济型,一小时5个云豆,默认给你2个jvm虚拟机。你可以稍等点击jvm管理修改成1个足够了。

注意!!如何不用的时候,记得点击jvm管理里把jvm关闭掉,不然它要等上3小时没任何操作后才会自动关闭,那你就少了15个豆豆咯。

点击代码管理,在这里我新增一个版本,然后在操作里上传你的应用war包就行了。新浪用的是jetty服务器,不是tomcat。

服务器的申请就是这样,以后代码有更新就上传覆盖。

3.微信公众平台远程服务器配置

点击公众平台的开发者中心,通过认证后点击服务器配置,要你输入远程服务器的url和token,还有系统会自动生成的密钥。

url就是你代码中心的你之前新建的代码版本链接,比如1.xxxxx.com,再加上你首次认证的servlet名,比如coreServlet,加起来就是url了,如1.xxxxx.com/coreServlet,

不需要应用的上下文路径。

认证的代码逻辑就是通过对收到参数进行sort后加密得到一个东西跟另外一个参数对比,对比成功了就认证成功了,具体看文档。

话说为什么要写认证代码,因为你只有认证后才能启动服务器,官方的规定。

token就是什么,就是你代码里面自己写死的字符常量,比如“weixin”,自己看你的代码去。

填好后就点击认证就行了,如果报错的号,就是你的应用里面的jar包里面有servlet-api.jar这个包,上传到服务器的时候记得先从war里删除。

4.自定义菜单代码编写

启用服务器配置后,就可以编写自己的菜单,菜单是3*5的菜单,意思是3个大菜单,每个大菜单下面5个小菜单最多。

代码编写的思路是,定义一个BASEBUTTON菜单实体类,然后扩展大菜单和小菜单实体类。在service层实现具体的菜单的名字,url等,控制层调用微信的自定义菜单创建接口就行了。自定义菜单就创建完毕了。其他什么自定义菜单查询 删除功能一般用不上。

5.接收和发送消息

代码编写的思路是,定义一个BASEMESSAGE消息实体类,然后扩展不同类型消息实体类。接收和发送消息实体类组可以分别定义。在service层实现具体的消息发送逻辑等,控制层调用POST方法转换XML和组装XML格式字符发送给微信接口就行了。消息都是XML格式进行传送。

入门的功能就是这样,后面的一些高级功能,就需要自己去看文档调试了,拜拜~

需要入门教程的完成代码包的可以在后面留言邮箱,或者等我有时间上传网盘。

时间: 2024-08-05 19:05:06

JAVA微信公众号开发入门的相关文章

微信公众号开发入门笔记(一):知识及技术路线图

注:本系列博客所使用的编程语言为Java,内容主要来自于慕课网课程:初识Java微信公众号开发(课程链接:http://www.imooc.com/learn/368)的学习收获和总结. 因为微信的大规模普及性,微信公众号开发可以开发出跨平台使用的功能,并且使用起来简单方便.个人使用Java作为工作语言,对Java比较熟悉,所以本系列的笔记采用Java语言来进行开发.此外,慕课网的课程"初识Java微信公众号开发"为我带来了很大的启发,很适合想要做微信公众平台开发的朋友们的入门. 那么

微信公众号开发入门心得(一)

一.前言 为了快速了解微信公众号开发过程,我选择了php语言来进行微信公众号开发,选择php的原因有两点,一是网上有很多用php开放微信公众号的教程,可以减少学习成本:二是php也比较容易学习,学习门槛低. 学习php开发微信公众号,开发者需要有一点php基础.对于学过其他编程语言的童鞋,了解一些基本的php语法就可以开始了.我的 PHP基础学习笔记(一) 二.微信公众号开发的步骤 三.微信公众号开发步骤详解   + 微信公众号开发入门可以参考 微信公众平台开发入门教程 教程中用的新浪云做的服务

[1] 微信公众号开发 - 入门基本流程

1.公众号的类别和注册 1.1 公众号类别 微信公众号目前有三种,订阅号.服务号.企业号,另外还有一种后来推出的和公众号带点关系的小程序. 订阅号.服务号和企业号的功能区别如下(更多详细区别戳参考链接): 而在我们微信的日常使用中可以看到,订阅号会集中放置在"订阅号"中,不会直接出现在聊天栏,而是放在二级目录下(如虎嗅网.36氦).服务号的话,则是直接放在聊天面板的一级目录中的(如中国移动10086),主要是用以部分大公司企业提供服务,而订阅号主打是咨询和媒体.而企业号主要是用于公司内

《初识Java微信公众号开发》 学习中遇到的困难

前一段时间无聊的时候,在慕课网上自学了一点点微信公众号开发(受学姐威胁). 慕课网教程的地址:http://www.imooc.com/learn/368 毕竟是免费的课程,不可能讲的那么详细.所以我吧我遇到的问题跟大家分享一下. 这是我照着课程敲的代码(IDE是Eclipse): https://github.com/Zuosy/WeiXin 发到github上面了. 为了这个,我还专门到廖大的网站上学了一遍Git. 廖大的Git教程传送们:https://www.liaoxuefeng.co

微信公众号开发入门笔记(四):开发环境搭建

(一)Eclipse+Tomcat本地服务器的搭建及Servlet程序的创建 我们主要在Servlet程序中实现业务逻辑,自然要先熟悉Servlet程序开发环境的搭建及程序的创建. 详见博文:微信公众号开发技术基础(一):Eclipse+Tomcat搭建本地服务器并跑通HelloWorld程序 (二)外网映射工具的准备 从上一篇博文中的数据交互原理中可以看出,我们的本地后台服务器是需要直接和微信服务器进行交互的,而微信服务器必须访问一个公网的地址,无法访问我们本地的地址.因此,需要一个外网映射工

Java微信公众号开发

微信公众平台是腾讯为了让用户申请和管理微信公众账号而推出的一个web平台.微信公众账号的种类可以分为3种,并且一旦选定不可更改.按照功能的限制从小到大依次为:订阅号.服务号.企业号.个人只能注册订阅号.注册地址:https://mp.weixin.qq.com/. 开发环境的准备 微信公众号 外网映射工具(开发调试) 与微信的对接的URL应该满足以下的条件: 在公网上能够访问 只支持80端口 映射工具有很多,例如花生壳,ngrok可以将内网映射到公网上面,这样就可以使用公网访问本机的网络服务.下

微信公众号开发入门教程第一篇

关键字:微信公众平台开发作者:方倍工作室 在这篇微信公众平台开发教程中,我们假定你已经有了PHP语言程序.MySQL数据库.计算机网络通讯.及HTTP/XML/CSS/JS等基础. 我们将使用微信公众账号方倍工作室作为讲解的例子,二维码见底部. 本系列教程将引导你完成如下任务: 创建新浪云计算平台应用 启用微信公众平台开发模式 体验常用接收消息及发送消息类型 了解数据收发原理及消息格式 第一章 申请服务器资源 创建新浪云计算应用 申请账号 我们使用SAE新浪云计算平台作为服务器资源,并且申请PH

Java微信公众号开发----关键字自动回复消息

在配置好开发者配置后,本人第一个想要实现的是自动回复消息的功能,说明以下几点: 1. url 仍然不变,还是开发配置里的url 2. 微信采用 xml 格式传输数据 3.微信服务器传给我们的参数主要有(如图): 附上解析xml类的依赖: 1 <!-- dom对象读取写入xml文件 --> 2 <dependency> 3 <groupId>dom4j</groupId> 4 <artifactId>dom4j</artifactId>

微信公众号开发入门笔记(三):编辑模式与开发模式

(一)编辑模式与开发模式的区别 微信公众号后台分为编辑模式和开发模式,这两种模式是互斥的,也就是如果当前开启的是编辑模式(即默认的模式),那么开发模式必须是关闭状态的:如果当前开启的是开发模式,那么编辑模式状态必须是关闭的(此时自动消息回复.自定义菜单等都不可用). (二)开发模式下数据交互的原理 一张图说明问题: 所以我们需要实现的主要业务逻辑就在微信公众号服务器后台.