基于B/S架构的知识库管理系统设计与实现

 2022-01-17 11:01

论文总字数:25333字

目 录

1 绪论 1

1.1 课题研究的背景 1

1.2 课题研究的目的意义 1

1.3 论文结构 1

2 系统关键技术分析 2

2.1 关联度分析算法以及实现技术 2

2.1.1 关联度分析简介 2

2.1.2 针对知识库管理系统的关联度分析 2

2.1.3 关联度分析算法Apriori以及实现技术 2

2.2 前后端分离技术与RESTful接口技术 3

2.2.1 前后端分离技术简介 3

2.2.2 RESTful接口技术分析 4

2.3 系统权限管理技术以及安全路由技术 4

2.3.1 系统权限管理技术 4

2.3.2 安全路由技术 5

3系统的设计 5

3.1 系统整体架构设计 5

3.2 前端架构设计 6

3.2.1 前端技术栈选型 6

3.2.2 前端项目结构 6

3.2.3 前端代码组织规范 7

3.3 后端架构设计 8

3.3.1 后端技术栈选型 8

3.3.2 后端代码组织结构 8

3.4 数据库设计 9

3.4.1 数据库结构设计 9

3.4.2 数据库User表设计 10

3.4.3 数据库File表设计 10

3.4.4 数据库Doc表设计 11

3.4.5 数据库Text表设计 11

3.5 系统接口设计 12

3.5.1 系统应用接口设计规范 12

3.5.2 系统主要接口设计 12

4系统的实现与关键代码解析 15

4.1 登陆注册系统 16

4.2 数据统计系统 18

4.3 用户信息系统 19

4.4 文档管理系统 20

4.5 文档检索系统 22

4.6 关联度分析系统与报告生成系统 23

4.7 系统部署 28

4.7.1 前端服务器部署 28

4.7.2 后端服务器部署 29

5总结与展望 29

5.1 项目总结 29

5.2 项目展望 29

参考文献 29

致谢 31

基于B/S架构的知识库管理系统设计与实现

来子森

,China

Abstract:Along with the advent of the Internet, people’s work to be exposed to more and more new knowledge, new concepts, how to effectively manage and share knowledge to become a often occurs in the context of the current era. A team or a company needs to manage the new knowledge effectively, and it needs to use the methods of retrieving and analyzing the existing knowledge to carry out data mining. This system in order to realize the steady and high performance, technology stack is relatively new, before and after the separation of the architecture, the back-end using mature Java9 environment, using Java to code, using MySQL database to store data, simple interface using the RESTful API; The front end uses ReactJS for user interaction development, and node.js provides asynchronous, high-performance production and development environment for ReactJS. System support basic user login registration documents, add and delete, and modify information retrieval, and meticulous correlation analysis is made of documents, generate complete visualization analysis report, to help users better on existing knowledge, classification, sorting, analysis of mining. The system is stable, easy to operate, and has a beautiful user interface.

Key words:B/S; knowledge base; management system; frontend and backend separation

1 绪论

1.1 课题研究的背景

伴随着互联网的发展演进,知识传播的媒介越来越多,知识传播的渠道也越来越丰富,从而知识的演变迭代也越来越快[1]。高科技作为一个新的经济推动因素促进了新的产业结构改革,新时代情形下的知识与经济的关系越来越紧密[11]。一方面,经济活动中知识的比重越来越大,产品和服务的知识含量不断提高;另一方面,为了提高企业的综合竞争力,知识的整理和提炼越来越重要。

一个团队、一个公司经常要学习汇总新的新知识,尤其是技术团队,会接触到越来越多的新知识、新概念。在信息化时代如何有效地管理知识,是一个经常被广泛探讨的问题[3]。一个团队或公司既需要有效地分类新知识,又需要通过检索和分析现有知识的方法来进行数据挖掘,所以一个好的知识库管理方案可以为整个团队带来不可或缺的益处。

1.2 课题研究的目的意义

当今市面上的知识库管理系统,存在着两个主要的问题。

一是大多数是企业内部研制,为了避免核心技术泄漏,这类系统基本上都是保密且闭源的,用户权限有严格划分。这样一来,需要一个技术团队来维护,代价高昂中小企业根本不可能实现[5]

第二个问题是闭源带来技术迭代慢,企业只需要这个系统可以满足基本的使用即可,而不关注是否有更好的技术来重构系统[14]。这样带来的问题就是系统越来越笨重,不能及时适应新的技术潮流。

第三个问题就是,不能智能的归档、挖掘、整理现有的文档。哪些文档是可以归类到一类中去的?哪些文档在系统中已经有相似的文档了?这些问题都需要通过关联度分析更好的解决。

如此一来,中小型企业团队迫切需要一个开放的、可以很好帮助他们管理、分类、挖掘知识文档的知识库管理系统。

为了适应新时代的技术浪潮,解决中小型团队知识管理的核心痛处,我设计实现了一个高可用性、高性能、高稳定性的知识库管理系统。

1.3 论文结构

第一章是论文绪论,主要阐述了知识库管理系统在当今时代下的研究背景,并阐明新时代下B/S架构的知识库管理系统的研究意义。

第二章是系统的关键技术分析,细致讲解了本系统的核心技术,它包含了本系统的三个亮点:关联度分析、前后端架构分离、以及较为新颖的前后端权限管理和安全路由。

第三章是系统的设计原理介绍,我会详细介绍系统整体的组织架构设计,然后细分到前端的架构设计、后端的架构设计、数据库的设计、接口的设计以及这样设计的好处、意义。

第四章是本系统的实现过程以及核心代码,展示了生产开发环境以及讲解了系统的核心代码。

第五章是总结和展望,不仅总结了我从这个系统中学习到的和运用到的知识,也列举了将来本系统可以演进修改的地方,以及大胆展望新的知识管理方案。

最后结尾处是参考文献和致谢内容。

2 系统关键技术分析

2.1 关联度分析算法以及实现技术

2.1.1 关联度分析简介

关联度分析(也被称作关联度挖掘)是一种简便和经常运用的分析技术,属于数据挖掘分析方法的一种。它可以在大量具有相关性的数据集或中发现一些潜在的关联性特征,再通过这些特征挖掘关联度规则。

关联度分析的目的是在大量数据中发现多组项目之间隐蔽的相关性[4]。举一个例子,现在有一个家庭派对,每周举办一次,关联度分析便是在分析Tom每次来参加派对和Amy每次来参加派对有没有关系(关联度规则),以及谁最热爱参加派对,最热爱参加派对的一群人是谁(关联度频繁集)。

2.1.2 针对知识库管理系统的关联度分析

知识库管理系统为了更好的挖掘已有知识文档的内在联系,可以采用关联度分析这种简便实用的方法,对知识库文档进行数据挖掘。通过对文档的关联度分析,我们可以找到一类文档中,哪一类型的知识点属于同一类型的知识点,又是哪一类文档可以相互整合,更好的归档为同一类文档。

文档知识库的关联度分析大体上分几步:

第一步先对目标文档进行关键词提取,通过一些语义分析的函数库进行关键词分类,获得按照段落或者文档划分的候选项集;

第二步,对候选项集进行关联度分析,筛选出频繁项集;

第三步,将频繁项集和候选项集作为参数,迭代进行关联度规则挖掘,获得满足用户置信度的关联度规则。

2.1.3 关联度分析算法Apriori以及其实现技术

知识库管理系统需要一种可靠实用的关联度分析算法来分析文档之间的数据关联性和潜在关联关系。由Rakesh Agrawal提出的Apriori算法就很满足这一点,它是一种常用的频繁项集、关联度规则挖掘算法。它使用逐层迭代搜索的方法,采用广度优先搜索算法进行搜索并采用树结构来对候选项目集进行高效计数,获得的k- 项集用于搜索下一个(k 1)- 项集。它的应用较为广泛,可用于消费者市场价格分析,猜测消费者的消费习惯;也可用于网络安全领域的入侵检测技术;还可以用于高校的管理。根据挖掘规则,可以有效地协助学校管理部门开展有针对性的扶贫工作。它还可以用于移动通信领域,指导运营商的业务运营和子公司业务提供商的决策。

要了解这个算法,先要了解两个概念:支持度(Support)和置信度(Confidence)。支持度是指单个项在整个项集中所占的比重,即P(A∩B);置信度用于统计一个频繁项中单个元素的影响量,P(B|A),通过 A对AB项的置信度计算公式p(AB)/P(A),可以推导项集之间的内在规则。支持度和置信度是用来量化关联度分析结果的方法。

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

相关图片展示:

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

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