设计 任务书 文档 开题 答辩 说明书 格式 模板 外文 翻译 范文 资料 作品 文献 课程 实习 指导 调研 下载 网络教育 计算机 网站 网页 小程序 商城 购物 订餐 电影 安卓 Android Html Html5 SSM SSH Python 爬虫 大数据 管理系统 图书 校园网 考试 选题 网络安全 推荐系统 机械 模具 夹具 自动化 数控 车床 汽车 故障 诊断 电机 建模 机械手 去壳机 千斤顶 变速器 减速器 图纸 电气 变电站 电子 Stm32 单片机 物联网 监控 密码锁 Plc 组态 控制 智能 Matlab 土木 建筑 结构 框架 教学楼 住宅楼 造价 施工 办公楼 给水 排水 桥梁 刚构桥 水利 重力坝 水库 采矿 环境 化工 固废 工厂 视觉传达 室内设计 产品设计 电子商务 物流 盈利 案例 分析 评估 报告 营销 报销 会计
 首 页 机械毕业设计 电子电气毕业设计 计算机毕业设计 土木工程毕业设计 视觉传达毕业设计 理工论文 文科论文 毕设资料 帮助中心 设计流程 
垫片
您现在所在的位置:首页 >>毕设资料 >> 文章内容
                 
垫片
   我们提供全套毕业设计和毕业论文服务,联系微信号:biyezuopin QQ:2922748026   
基于WxJava框架的集客微信公众号的设计与实现 开题报告
文章来源:www.biyezuopin.vip   发布者:毕业作品网站  

目录

一、选题的背景与意义

二、研究开发的基本内容、目标,拟解决的主要问题或技术关键

(2) 用户管理

(3) 文章分享

(4) 访客记录

三、研究开发的方法、技术路线和步骤

(1) 系统平台:Linux

(3) 所用框架:WxJava+Spring MVC+MyBatis+Spring Boot

(4) 服务器软件:Tomcat

(5) 数据库软件:MySQL 和 Redis

四、研究工作总体安排与时间进度

参考文献

一、选题的背景与意义

1.1 研究开发的目的

社交软件越来越流行,并对每个人的生活和工作都造成了非常大的影响[1],人们习惯于在社交软件上获取知识、交流互动。微信作为中国社交软件典型代表,迅速成为人们日常生活中不可或缺的一部分。根据腾讯 2019Q3 财报[2] 显示,微信的月活跃用户群达到了 11.51 亿。微信中有两大重要组成模块:公众号和朋友圈。

微信公众号作为用户获取知识和关注热点的重要平台,目前已经诞生了 88.5 万个[3];而微信朋友圈则是为用户提供分享知识和交流互动功能的虚拟社区[4]。

微信朋友圈的流行,也赋予了其新的价值。随着移动互联网的普及,微信朋友圈可以促进社会资本的积累和增长[4]。朋友圈将现实中的社交网络演变成为虚拟空间,使得那些具有共同兴趣爱好的人们实现了跨距离的互动,并且为营销提供了新渠道。但朋友圈始终没有开发出一种功能,可以让用户看到朋友圈的浏览记录。对于那些渴望社交的用户而言,他们希望可以了解到谁浏览了他的朋友圈,从而进行深入的沟通[5]。微信本身没有访客记录该项功能,为了提高社交效率和范围, 迫切需要开发出一个可以浏览访客记录并且能够获取访客关系网的系统。基于WxJava 的集客公众号的实现可以帮助用户收集朋友圈访客信息和记录,帮助用户构建共同兴趣爱好的好友圈,上述功能可以为销售人员提供更精准的营销手段和更高效的社交方式。集客公众号为用户提供了热点资讯、访客记录、社交关系网等强大功能。用户通过分享或阅读符合朋友圈共同兴趣的热点资讯,可以获得社交满足和功利满足[6]。除此之外,当其他用户阅读了转发的热点资讯,可能希望通过分享、点赞或评论来表明自己此时的情绪状态和想法等,这对人际关系的加强也有帮助[7]。不仅如此,用户还可以第一时间了解到浏览记录和访客的信息,得知与其有共同话题或兴趣的好友,提高用户的社交效率,提供更多的社交机会。


1.2 国内外研究发展现状

在国外,社交软件的知识或信息分享已成常态,社交软件例如 Facebook 和

wiki,都为个人的知识寻求活动赋予了权力。在这里,人们可以实现各种信息寻求目标,访问网络所提供的各种信息服务。在网络空间中,知识寻求者可以相互联系,并访问超出其地理范围的内部和外部知识[8]。社交软件为世界各地的知识寻  求者提供了一种在他们的网络中提问或回答问题的方式,并寻求其他具有类似兴趣的人。微信的公众号也同样具有分享知识的功能,但微信公众号的局限在于无法准确知道那些具有类似兴趣的好友,因为有一些用户只是习惯性地阅读文章,但  不会进行点赞和评论[6]。而用户知道谁阅读了他的文章是非常重要的功能,可以  让用户扩展他的社交网络,结交那些基于某种共同的兴趣或话题而形成的朋友。

除此之外,微信作为社交媒体,同样具备营销手段。国外研究表明,媒体和营销研究人员可以利用社交软件来满足客户的社会需求,包括洞察客户的情况、寻找  对话和社会互动、替代现实生活中的友谊,帮助履行社会角色[9]。研究表明,微信  营销已经成为必备的营销手段之一[10]。微信营销内容在微信的好友圈里的传播能使信息本身的信赖度得到提升,并且可以每时每刻地通过手机进行信息交换、体  验分享,增加微信营销内容的覆盖范围;凭借手机的便携性和网络的传播性,营销活动可以解脱时空的束缚,更有助于提高营销的效果[10]。现阶段,微信营销的主要痛点在于微信朋友圈的的具体数据无法实时获取,销售无法得知访客的信息,不  能了解哪些访客正潜在关注我的朋友圈以及访客的兴趣关注点。如果能够给营销  人员提供访客信息与访客关注点,他们就能够精准地向某些对用户朋友圈感兴趣的访客进行营销。因此在微信中收集访客信息,了解访客关注点,集中有价值的访  客进行社交便为“集客”的最终目的。

现阶段,国内有许多社交软件拥有“集客”的功能,例如 QQ 空间,就为用户提供了谁进入过空间、具体谁阅读过文章、谁转发过文章的功能,并且深受用户好评[11]。微信中也有一些可以收集到朋友圈访客记录的公众号,例如“客集集”公众  号,用户可以从公众号中转发自己感兴趣的文章链接,好友在阅读文章后,用户便能第一时间看见谁访问过该文章。但是“客集集”公众号的关注点主要在于文章  的分享中,将文章的内容作为重心,而缺少获取访客的具体信息、共同关注度、好友


关系网的功能。这将大大减少用户对访客的认知,用户无法得知每个访客的阅读信息、关注度,缺少对好友关系网的扩展。

WxJava 是微信团队推出的微信开发 SDK,为开发者提供了丰富的微信公众号、小程序功能接口,目前 WxJava 框架已经非常成熟,许多知名公众号均采用WxJava 来开发公众号,例如中国电信上海网厅、洽洽企业号、神龙养车等等[12]。WxJava 主要在消息管理、菜单管理、公众号配置方面提供了相应的功能,但对获取用户信息、构建用户关系网方面还缺少相应接口,因此系统的实现难点在于需要通过 WxJava 已提供的接口,对实现获取用户信息方面进行二次开发。

目前该领域的主要难点有:基于 WxJava,针对用户日益需要的朋友圈浏览记录数据化和信息寻求需求,开发出一款适合微信用户的公众号平台。同时,能够满  足数据的安全性、数据的远程传输、权限系统和系统数据备份。并且,可以实时推送热点资讯和专业知识文章,提供好友浏览记录并且能够根据用户的浏览和转发记录,分析出用户的好友网。除此之外,还需要保证系统能够承受大量用户的并发  请求,保证系统的稳定性和响应速度,并且系统框架应该是可扩展、易修改的。

二、研究开发的基本内容、目标,拟解决的主要问题或技术关键

2.1 研究目标

在对比国内外公众号及访客系统后,基于国内外类似系统的设计实现,提出自己的设计与实现。现阶段,微信已经成为人们社交的重要工具,我们必须掌握互联网时代下的社交信息。而微信公众号作为微信中使用人数最多的知识分享平台,  亟需开发出一款能够满足人们社交需求以及信息需求的公众号[6]。本课题的研究目标是基于 WxJava 框架来实现集客微信公众号系统,并且利用目前主流的关键技术和框架,例如 Spring Boot、MyBatis、Redis 等,来解决系统开发的复杂性、并发性问题,同时保证系统的可靠性、可扩展性与高效性。

2.2 研究的基本内容

由于整个微信公众号系统结构十分庞大,开发所需工作量大,因此本研究的将  基于公众号的不同子系统模块进行设计与实现。系统分为 3 个子系统,分别为:用户子系统、新闻子系统、好友记录子系统。具体结构如图1所示。

不同的子系统实现不同的功能,子系统间通过接口相互连接形成一个整体。


图 1: 系统整体结构

用户子系统主要负责处理用户的一系列需求,是面向用户的子系统。利用用户子系统,我们可以实现与用户的良好交互,并且能够通过用户信息计算出用户的兴趣  爱好、共同好友等。用户子系统还可以为用户提供高效的个人信息服务,例如储存、查询用户的个人信息,管理用户文章等。因此,用户子系统需要特别注意用户信息的安全性和完整性,保证用户的个人信息不被侵犯。

新闻子系统为公众号提供了一系列目前关注度较高的新闻热点或专业资讯, 是面向新闻的子系统。在新闻子系统中,我们需要每天爬取实时新闻热点并对新闻内容进行存储。并且需要设计出一套高效、安全的新闻展示接口。

好友记录子系统记录了用户转发文章后其他好友阅读记录的信息。同样也是  面向用户的子系统,与用户子系统不同的是,好友记录子系统面向的是用户的好友,负责处理用户好友的浏览信息,并且能通过浏览信息提取出与好友的共同兴趣、好友关注度等关键信息,为用户提供更多社交机会。本研究的具体内容包括:

(1) 文章发布

公众号能够定期向用户发布感兴趣的文章或当前的热点资讯,文章均来自各大官网及正规媒体,例如人民日报、新华社、中国人寿官网等等。系统需要定期从各大官网爬取所需文章并储存,并且通过用户的兴趣爱好为用户展示其感兴趣的文章。用户也可以自行上传文章,系统将对文章进行审核,审核通过的文章同样可  以进行发布。

(2) 用户管理

非注册用户(游客)仅允许阅读推送文章,不允许转发和分享。注册用户允许


在公众号中填写个人信息,完善个人主页,设置感兴趣的话题或新闻,公众号会定期向其推送感兴趣的文章。

(3) 文章分享

注册用户在阅读感兴趣的文章后,允许将文章转发到朋友圈,或分享给好友和群聊。其他好友可以在朋友圈看见其转发的文章,并且对文章进行点赞和评论。系统将会自动记录其他用户的访问记录。

(4) 访客记录

用户可以在公众号后台查看浏览过用户分享到朋友圈或群聊的文章的好友, 系统将自动获取访客的头像、昵称、阅读次数和阅读时长等信息展示给用户,并且对文章的二次转发进行记录。除此之外,系统能够通过转发记录和阅读记录生成好友关系链,判断出好友当前的关注点。

2.3 拟解决的技术难点

1. 将 Spring MVC、MyBatis、Spring Boot 框架进行整合与配置,同时保证系统的可扩展性、稳定性与可靠性,解决系统的高耦合、低内聚问题。并且需要对

MyBatis 获取的信息进行缓存,减轻数据库的压力。因为 MyBatis 有不同的缓存方案,选择合适的缓存方案来缓存不同的数据是系统实现的难点之一。同时,MyBatis 的 SQL 语句编写需要注重语句执行的效率,尽量选择执行快的语句,对一些慢查询能够进行优化分析。

2. Redis 的使用。使用 Redis 的主要原因在于 Redis 高效的性能,能够解决用户并发访问时系统的响应时间和处理性能。系统使用 Redis 的主要难点在于 Redis 框架与其他框架的整合、配置,做好数据库的持久化与备份。同时, Redis 作为 NoSQL 数据库,我们需要合理地选择那些用户频繁访问的数据进行储存,并且利用 Redis 丰富的数据结构,对数据的储存进行优化。并且需要对 Redis 造成的数据雪崩、数据击穿有相应的处理方案,保证系统的稳定性, 减轻数据库压力,将开发成本和服务器成本降到最低。

3. Vue.JS 技术及前端 UI 的设计与开发。使用 Vue.JS 的主要难点在于通过其特性进行核心功能开发,能够保证表示层的动画、组件等能够稳定地展示在  页面上,同时兼备可扩展性。并且能够将 Vue.JS 项目与 CSS 文件进行打包


部署,将前后端进行分离。前端 UI 的设计需要使用微信官方提供的 WeUI, 设计出一套通俗易懂,易操作的前端页面,同时能够实现不同子模块的切换和使用。前端界面的接口需要设置正确的路由地址并且发送和接受正确的

Json 数据。

4. 基于 WxJava 的二次开发。WxJava 是微信官方提供给微信开发者的 SDK, 提供了消息管理、用户管理、菜单管理、公众号配置等强大功能,但 WxJava 并未提供对用户信息的获取、好友圈的构建与浏览记录的获取,因此本系统的实现难点在于需要基于 WxJava 进行二次开发,实现上述功能,并且能够保证框架的可扩展、易修改性。

5. 爬虫技术的使用。在新闻子系统中,页面中需要展示各大网站的文章。因此我们需要通过爬虫技术爬取不同媒体网站的热点新闻和专业资讯保存在数据库中,来达到实时新闻展示的目的。爬虫技术主要使用的是BeautifulSoup,BeautifulSoup 最主要的功能是从网页抓取数据,Beautiful Soup自动将输入文档转换为 Unicode 编码,输出文档转换为 utf-8 编码。系统实现的难点在于如何在爬取的文章 HTML 文件中通过分析其格式特点,获取到文章的标题、作者、正文,并且能够将上述数据实体化保存到数据库中。不同的网站 HTML 格式不同,因此需要针对不同的网站设计出不同的爬取模式,并且能够将整个爬虫过程全自动化。

6. 系统的权限与数据安全。用户的数据在网络中传播需要保证其安全性,因此需要使用合适的协议来传输数据。并且在服务器端,在储存数据的过程中要保证数据的安全性与可靠性。公众号的订阅用户与游客需要有不同的系统访问权限,所以需要设计出一套易扩展的权限系统,保证系统的权限安全。同时做好 XSS 防护、SQL 攻击、DDOS 防护。

7. 高并发下系统的整体稳定性与性能。通过使用 Redis、MyBatis 缓存、数据库读写分离等技术,保证系统在高并发时的稳定性。同时需要减轻数据库和服务器的压力,保证数据的可靠性,做好数据的备份和持久化。


三、研究开发的方法、技术路线和步骤

(1) 系统平台:Linux

(2) 系统构架:B/S 构架

B/S(Browser/Server) 结构即浏览器和服务器结构。在互联网的不断发展中, Web 技术的出现使 B/S 结构越来越流行。B/S 模式统一了客户端,让核心的业务在服务端进行处理。用户只需要在电脑或手机上安装一个浏览器,就可以通过 Web Server 与数据库进行数据交互。B/S 结构由三层组成,分别是浏览器、Web 服务器、数据库,在这种模式下,客户端电脑负荷被大大简化,大大减少了系统维护和升级的工作量和成本。目前 B/S 结构主要是建立在局域网上,通过 Internet/Intranet 模式访问数据库,降低了网络传输的成本。B/S 结构可以有效保护系统的访问权限及数据,用户通过局域网就能够在 WWW 浏览器上实现工作业务。

(3) 所用框架:WxJava+Spring MVC+MyBatis+Spring Boot

WxJava 是微信官方提供给微信开发者的 SDK,提供了消息管理、用户管理、菜单管理、公众号配置等强大功能。基于 WxJava,我们可以快速开发出一套适用于微信公众号平台的 Web 项目。WxJava 基于微信开发文档,将微信常用服务进行模块化,开发者仅需要通过使用 WxJava 提供的 API 即可完成对微信公众号的配置、权限获取、用户管理。本系统需要基于 WxJava 对用户信息的获取、好友圈的构建与浏览记录的获取进行二次开发,并且能够保证框架的可扩展、易修改性。同时,通过使用 Spring 框架来简化开发所需的配置,通过 MyBatis 来简化 JDBC 操作,将开发重心放在业务逻辑处理上。

Spring MVC 是一个基于 MVC 模式的 Web 应用系统框架[13]。Spring MVC 由于其优秀的扩展性、简便性、易读性,现在逐渐成为主流的 Web 项目框架。Spring

MVC 对 J2EE 提供了很好的支持。

业务层通过 MyBatis 进行数据库操作。MyBatis 是 apache 的一个开源项目, 是一个基于 Java 的持久层框架。它支持定制化 SQL、存储过程以及高级映射[14]。

MyBatis 可以通过简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的

POJOs(Plain Ordinary Java Object, 普通的 Java 对象) 映射成数据库中的记录。Spring Boot 是目前主流的集成 Spring 的基础框架,主要用来减少 Spring 框

架的开发、配置、调试和部署工作,同时在项目内集成了很多实用的基础框架[15]。


在传统的 Spring 框架开发中,用户需要自行编写配置文件来配置 Spring,并在 Maven、Gradle 中加入相应的依赖包才能使用。如果使用 Spring Boot 进行开发,仅需在 Maven 配置文件中加上少量的配置,就可以在代码中使用所需要的框架,让原本复杂的配置简化到接近零代码配置,同时 Spring Boot 还轻松解决了依赖包的版本问题。除此之外,Spring Boot 不仅提供了微服务框架开发功能,能够将 Web程序打包为 war 文件部署,还可以将 Web 程序编译为可独立运行的 jar 包,同时还内嵌了 Tomcat 容器,使得 Web 程序能够独立于容器外运行。不仅如此,Spring Boot 还提供了很多强大的开发工具,例如:测试功能集成、消息(JMS)、发送邮件、 JTA 分布式事务、JMX 的监控和管理技术等等。

(4) 服务器软件:Tomcat

Tomcat 服务器是由 Apache 推出的一款免费开源的 Servlet 容器,是一种轻量级的应用服务器。通过 Tomcat,可以实现 Java Web 程序的装载。除此之外,

Tomcat 也具有传统服务器的功能: 处理 HTML 页面。Tomcat 运行时占用的系统资源非常少,并且易扩展,支持负载平衡、邮件服务等应用系统常用的功能,因而深  受 Java 开发者的喜爱,并得到了部分软件开发商的认可,和 Apache 一样,早已成为主流 Web 服务器的一种。

(5) 数据库软件:MySQL 和 Redis

MySQL 是一个关系型数据库,是最好的 RDBMS (Relational Database Manage- ment System,关系数据库管理系统) 应用软件之一。Redis 是一个基于内存的 K-V数据库,拥有丰富的数据类型与极高的性能,并且支持主从同步与持久化操作。系  统的所有数据均保存在 MySQL 数据库中,数据的持久化、部分查询都交由 MySQL 处理,Redis 主要负责热点数据的缓存,通过缓存热点数据,可以减少数据库的压力,同时 Redis 的高性能可以保障系统的并发性和可靠性。通过 MySQL 与 Redis 的配合使用,数据的存取效率将大大提高,并且能显著地降低开发成本。

四、研究工作总体安排与时间进度


表 1: 论文工作安排

任务序号

起止时间

阶段任务要点

1

2019.11.30-2020.1.20

了解课题相关内容,查找中、英

文资料

2

2020.1.21-2020.3.11

查阅文献资料,完成文献综述、

开题报告和外文翻译

3

2020.3.12-2020.3.20

学习Spring、MyBtais、jQuery等

开发相关技术

4

2020.3.21-2020.3.31

分析需求,确定开发工具

5

2020.4.1-2020.4.5

进行系统的概要设计

6

2020.4.6-2020.4.15

进行系统的详细设计

7

2020.4.16-2020.4.20

系统框架及开发环境搭建

8

2020.4.21-2020.5.21

进行项目的开发

9

2020.5.22-2020.5.25

完成系统测试

10

2020.5.26-2020.6.5

整理资料、完成毕业论文

11

2020.6.5-2020.6.10

上交毕业论文、准备毕业答辩


参考文献

[1] Report on user behavior of social media in 2015[R].

[2] 腾讯 2019 年 Q3 财报 [R].

[3] 2019 年微信公众号文章数据报告 [R].

[4] 程丹 . 微信朋友圈: 社会网络视角下的虚拟社区 [J]. 新闻记者 (05):73–77.

[5] 唐金杰. 微信朋友圈的人际互动模式研究 [D].[S.l.]: 哈尔滨工业大学.

[6] Gan, Chunmei. Understanding WeChat usersl̈ iking behavior: An empirical study in China[J]. Computers in Human Behavior, 68:30–39.

[7] 谭春辉; 王一君. 微信朋友圈信息分享行为影响因素分析 [J]. 现代情报, 2020, 40:84–95+102.

[8] Herrick D. The social side o‘f  cyber power’? Social media and cyber operations[C].

2016 8th International Conference on Cyber Conflict (CyCon), 2.

[9] Simon F, Tossan V. Does brand-consumer social sharing matter? A relational framework of customer engagement to brand-hosted social media[J]. Journal of Business Research, 85:175–184.

[10] 方爱强. 微信的营销价值与运用策略 [J]. China This Week in Consumer Electronics, 2013:113–114.

[11] 杨良琼. 大学生在 QQ 空间中的自我表露研究 [D].[S.l.]: 南昌大学, 2010.

[12] WxJava 官方文档 [R].

[13] 徐雯, 高建华. 基于 Spring MVC 及 MyBatis 的 Web 应用框架研究 [J]. 微型电脑应用 (7):5–8+14.

[14] 徐雯, 高建华. 基于 Spring MVC 及 MyBatis 的 Web 应用框架研究 [J]. 微型电脑应用 (7):5–8+14.

[15] 王永和, 张劲松, 邓安明, et al. Spring Boot 研究和应用 [J]. 信息通信, 2016(10): 91–94.

  全套毕业设计论文现成成品资料请咨询微信号:biyezuopin QQ:2922748026     返回首页 如转载请注明来源于www.biyezuopin.vip  

                 

打印本页 | 关闭窗口
本类最新文章
基于PLC的罐装加工过程为全自动 基于Python电影推荐系统设计 基于西门子S7-200PLC四层
音乐流派预测 任务书 基于PLC的鸡禽自动喂食机控制系 高速离心式果汁机的结构设计 评阅
| 关于我们 | 友情链接 | 毕业设计招聘 |

Email:biyeshejiba@163.com 微信号:biyezuopin QQ:2922748026  
本站毕业设计毕业论文资料均属原创者所有,仅供学习交流之用,请勿转载并做其他非法用途.如有侵犯您的版权有损您的利益,请联系我们会立即改正或删除有关内容!