基于生活类应用的微信公众平台

 2022-01-17 11:01

论文总字数:21417字

目 录

1 绪论 1

1.1 微信公众平台简介 1

1.2 开发内容 1

1.3 开发工具及主要技术 1

1.3.1 开发工具 1

1.3.2 主要技术 2

1.3.2.1 SpringMVC 框架 2

1.3.2.2 Spring Data JPA 2

1.3.2.3 MySQL数据库 3

2 需求分析 3

3 系统设计 4

3.1 开发的软硬件环境 4

3.2 系统架构设计 4

3.3 总体设计 5

3.4 数据库设计 6

3.5 详细设计 8

3.5.1 开发模式启用 8

3.5.2 数据库创建 9

3.5.3 主要系统逻辑分析 9

3.5.4 股票查询收藏页面分析 10

4 功能实现 12

4.1 请求校验流程 12

4.2 消息交互流程 13

4.3 消息结构封装 14

4.4 消息的处理 15

4.4.1 解析请求消息 15

4.4.2 响应消息对象转为XML 16

4.5 数据库操作实现 16

4.6 消息处理具体实现 17

4.6.1 关注提示语 17

4.6.2 主菜单功能 18

4.6.3 天气搜索功能 18

4.6.4 周边搜索功能 21

4.6.5 交通信息功能 22

4.6.6 股票查询功能 23

4.6.7 空气质量查询功能 26

4.6.8 音乐搜索功能 27

4.6.9 猜数字游戏 28

4.6.10 查询历史上的今天 30

4.6.11 识别微信浏览器 31

5 总结 31

参考文献 32

致谢 33

基于生活类应用的微信公众平台

唐鑫意

,China

Abstract:WeChat public platform , a new service platform to provide business services and user management capabilities for individuals, businesses and organizations , is favored by many companies and media. This paper aims to develop a WeChat public platform that is convenient and close to people's lives. The platform mainly through the BAE (Baidu Application Engine) as a third party platform for development.It applies the MySQL service that BAE extends for database storage. At the same time it also used some of the Baidu map interface. Using Maven, Spring and Spring Data technology, It implements a number of features, such as weather query, the surrounding search, traffic inquiries, stock inquiries, air quality inquiries, etc. For the weather, stocks, air quality and other specific information query, also called a lot of other network interface.

Key words:WeChat;Public Platform; Convenience; Life

  1. 绪论
    1. 微信公众平台简介

微信公众平台,简称是WeChat [1]。它是给个人、企业和组织提供业务服务与用户管理能力的全新服务平台,目前的方向是:挖掘自己本身用户的价值,为这个平台添加丰富、优质的内容[2]

    1. 开发内容

为了更好的方便用户查询一些和生活相关的信息,虽然市面上已经有了关于生活的各种软件,但是它们有两个较为明显的缺点。一是内容比较分散,由于大多数软件只涉及到其中一两种功能查询,所以要是想要查询不同方面的问题就要打开多个软件,这样耗时比较多而且不灵活。二是这些大多都是作为一个APP出现在市面上的,需要提前下载并安装好相应的软件才能进行操作处理。

而在微信上开发这样一个生活类公众平台[3],它具有极为广泛的用户群体,由于绝大多数只能手机上都安装有微信,所以它不需要进行安装,只需要打开微信关注一下就可以了,简单快捷。

本微信公众平台开发了多个功能,可以查询天气、交通信息、空气状况、股票等信息,满足用户对生活方面信息的查询,并且简单,易上手。

    1. 开发工具及主要技术
      1. 开发工具

1)微信公众平台:微信公众平台是开发者通过公众号为微信用户提供相关资讯和服务的平台[4],而微信公众平台开发接口则是提供这些服务的基础[5]

2)百度应用引擎:百度应用引擎(BAE)是一个可以支持多语言的服务器端的运行环境,它能够帮助开发者非常快速的开发并在其上面部署应用[6]

3)Eclipse:Eclipse是一个基于Java的可扩展的开发平台,并且它的源代码是开发的。就其本身而言,它单纯的只是一个框架和一组服务,但是它可以通过其他不同的插件来构建开发者想要的开发环境。值的注意的是,它附带了一个标准的插件集,包括开发Java工具(即JDK)[7]

4)Maven:Maven项目对象模型(POM),是一种可以通过一小段的描述信息来进行管理项目的构建,报告和文档的软件项目管理工具 [8]

      1. 主要技术
        1. SpringMVC 框架

SpringMVC是一种基于Java的轻量级Web框架[9],它实现了WebMVC设计模式的驱动请求类型。它具有三层结构,模型(Model)-视图(View)-控制(Controller)[10]

图1.1为SpringMVC的流程图:

图1.1 SpringMVC流程图

        1. Spring Data JPA

Spring Data,一个用来简化程序对数据库访问的开源框架,同时它也支持云服务。它的主要目标是简化数据库操作,使得对数据的访问更加方便快捷[11]

JPA是由sun提出来的一个对象持久化规范,它的底层是由一些流行的开源ORM(Object Relational Mapping,即对象关系映射)框架来实现的,因此JPA就是关系型数据库和java实体对象建立起映射关系来,再通过面向对象编程的思想进行数据库操作的规范[12]

而Spring Data JPA,则是一个由Spring提供的一个用来简化JPA开发的框架,它极大的简化了JPA的写法,大多数情况下,都不用写具体的实现,就能实现对数据库的访问和操作。

        1. MySQL数据库

MySQL数据库是一个关系型数据库管理系统,是由瑞典MySQL AB公司独立开发的[13],目前属于Oracle公司,由于它是将数据库中的数据保存在不同的表中,而不是存放在一个大的仓库内,这样就大大增加了操作的速度,同时也提高了灵活性[14]

  1. 需求分析

该微信公众平台提供了多种关于自身周边实时信息的查询功能:天气情况查询,周边事物搜索,交通情况查询,股票信息查询,空气质量查询,这些功能满足了实用性的要求。除此之外,该平台还提供了音乐搜索,猜数字游戏,历史上的今天等查询娱乐功能,增添了平台的趣味性。

在实现功能的过程中,该公众平台对每个发消息给微信服务器的用户都进行了状态划分,这样简化了用户输入的字符长度,每个状态都对应了一个功能,默认状态为0,进入其他状态后,用户只需要回复“?”即可恢复默认状态。这里并没有用常用的弹出式菜单访问方式,是由于在开发模式中,只有获取了自定义菜单权限才能设置菜单,而获取自定义菜单权限需要企业或者媒体才能申请,同时需要公众号关注的人数达到500人才可以获取该权限。

1)状态0:该状态下,用户回复1-8的任一数字即可进入相应功能查询状态。

2)状态1:该状态为天气查询功能,此状态下,回复“本地”,若用户未发送过地理位置信息,则会提示先发送地理位置信息;若已经发送过了,则会回复用户最后一次发送的地理位置的天气情况。若此状态下回复了省市名称,则会回复该省市的天气情况。

3)状态2:该状态为周边搜索功能,此状态下,回复关键字,如:“ATM”、“KTV”等,则会回复几条图文消息,按照距离由近及远排列,点击任一条消息,即可跳转到导航界面。

4)状态3:该状态为交通查询功能,此状态下,回复“本地”,则会回复一条链接消息,点击进入,则会显示出一个带有周围交通状况的地图界面,若回复的是省市名称,则会显示该省市的主干线交通状况。

5)状态4:该状态为股票查询功能,进入此状态后,公众号会回复一个链接,点击该链接,会进入一个页面,该页面可以进行股票的查询,收藏和取消收藏功能。

剩余内容已隐藏,请支付后下载全文,论文总字数:21417字

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;