本项目是第九届服创大赛的A组赛题,旨在解决庞大的文档分类问题,快速检索所键入的关键字信息。提供安全科学合理的权限访问机制。在我看来,本系统就是两个核心点第一访问信息快速准确,第二安全科学合理的权限管理,其他还有知识分类,知识上传,下载等等。
本系统采取的后端的技术(本人负责后端):
一、系统架构
SSM 三大框架。
通过Maven 构建,github 实现版本管理。
搜索模块:
Lucene 全文检索 Hanlp 中文智能分词。
Redis 缓存历史查询记录。
知识结构分类模块:
提供知识结构两级分类,知识在数据库中保存树的结构。
结合Echarts 智能提取每个节点绘制知识图谱。
Mahout 三种协同过滤算法,智能推荐知识。
权限管理模块:
Shiro 权限管理,用户-角色-权限权限管理
二、功能简介
严格权限管理。基于shiro的权限管理,有一个超级管理员,管理员,用户,管理员可以对知识进行维护,如知识增删,审批发布打印,知识质量评判等。
多种格式的批量上传下载更新以及上传前能够对资源进行预览。导入导出支持zip ,txt ,pdf , docx多种格式,同时导出支持手动和自动。
知识图谱。将海量但有关系的知识,自动构建知识图谱,用户可点击知识图谱相关节点进行查看。
快速而精准的搜索功能。提供全文,全拼,首字母,关键词等多种查询功能,以及搜索是提供关键词提示搜索按热点知识和时间排序。
知识关联功能。对知识点同类型,具有相同关键字的知识进行关联展示,也能通过专家判断进行诊断式推理关联,形成以某一知识问题为核心,逐层分析推理为分支的知识关联体系。
知识审批流程功能。用户上传的知识或要发表的知识需要由超级管理员指定的相关专家进行审查后,才能上传到我们的KnowAll云数据库或者进行发表。
热点知识统计(点击率,点赞收藏率等)。根据用户评分,用户的收藏,用户的点赞或不喜欢数量以及知识被浏览点击数量,对知识进行统计。
用户收藏点赞评论分享。用户可以根据自己的喜爱对知识点赞和不喜欢评分
知识分类。按时间,点击率等对知识进行分类,并对知识分热点和高中低多个等级
知识收藏。课程收藏,收藏视频,更快捷的找到并学习自己所收藏的视频。
三,特色综述
智能构建知识图谱
根据知识跟节点遍历查找所有的子节点,结合Echarts绘制出知识图谱
个性化知识推荐功能
基于协同过滤的推荐引擎的输入是用户的历史偏好信息, Mahout 提供的协同过滤的推荐策略,我们选择其中最经典的三种,User CF, Item CF 和 Slope One
2. 知识的关键字提取功能
我们使用的基于TextRank算法提取关键词同时结合TF-IDF统计词条到我们数据库。能够为用户提供快速精准的知识定位与推荐功能。
3 .多文件拖拽式及文件格式检查和预览式上传
支持批量上传,上传时用bootStrap fileinput 结合百度富文本UEditor 支持多文件拖拽上传并且支持上传时格式检查和预览。
4.无缓冲式,多格式知识在线预览
用ffmpeg处理视音视频文件, openoffice转化office文档,itextpdf、poi处理office,red5-server搭建流媒体服务 用Ckplay 播放器来在线预览各种格式。
5.企业级的统一知识搜索
系统在采用Lucene的基础上,引入了Hanlp自然语言处理技术。同时将历史查询结果保存在Redis 非关系型数据库。查询速度达到百万条/毫秒,增加词典,增强分词效果。
四、问题与解决方案
知识文档庞大,归类麻烦:该系统建立智能知识图谱,海量数据查找方便。文档分类结构清晰
如何准确和快速全文检索:采用Hanlp 智能中文分词建立Lucene 索引库,搜索结构准确,对历史查询结果缓存在redis中,这样解决了搜索数量大慢的问题,基本能够满足初级企业级搜索要求。
批量上传:使用支持多文件上传的插件Fileinput 后台多线程并发处理转换成文件流。
知识在线预览:用ffmpeg处理视音视频文件, openoffice转化office文档,itextpdf、poi处理office,red5-server搭建流媒体服务 用Ckplay 播放器来在线预览各种格式。增强用户体验实现类似主流播放网站的强大功能。
中文错别字识别:集成JcJc 自动识别错别字功能。
五、产品优势
六、一些项目截图
下载地址:
谢谢
---------------------