1.1.1课题的目的 本次设计的目的,主要是为了应对人们对文献调查的需求的日渐增长,根据用户平时检索文档的文本语义,为用户提供更加智能的个性化推
1.1.1课题的目的
本次设计的目的,主要是为了应对人们对文献调查的需求的日渐增长,根据用户平时检索文档的文本语义,为用户提供更加智能的个性化推荐。本次设计主要从语义分析,智能推荐等几个方面入手,以满足用户检索文献以及向用户推荐文献的需求。系统中的语义分析,是基于自然语言处理技术的一种算法技术,它可以根据用户输入的语句,精准的分析出语句所包含的关键词以及其他信息,过滤掉其中可能没用的信息,算法会经过大量的训练来保证分析的准确性。同样的,智能推荐算法能根据语义分析得到的关键词,与数据库中海量的文献信息进行匹配,从而得到最适合的推荐结果。经过这两种算法的双重过滤,最终呈现出来的推荐结果的准确性也能够得到极大提升。
1.1.2课题的意义
本系统是一个根据用户输入的文本语义,进行智能分析并向用户推荐所需文献的系统。本系统旨在减少用户信息检索中无关信息的干扰,提供给用户感兴趣的文献,它适用于互联网中对文献检索需求较大的用户,尤其是对于知识管理部门而言,对于当今信息急剧膨胀的状况具有重要意义。
1.2国内外研究现状与水平
2. 相关技术概述
本系统采用前后端分离开发模式。前端主要采用Angular框架与基于Angular的Bootstrap框架,主要工作是呈现网站的页面效果和与后台进行数据交互;后端采用Spring Boot框架进行开发,也是项目的核心,主要工作是实现系统的业务逻辑,与数据库进行交互,完成设计中每个模块的功能。
2.1框架介绍
2.1.1 Spring Boot框架
本系统的后端开发主要使用Spring Boot这个框架。Spring Boot是由Pivotal技术团队开发出来的一个全新框架,它使用Java语言进行开发,使用Spring Boot框架开发Java Web项目可以极大的简化项目的搭建和开发过程。Spring Boot框架中,集成了许多开发中需要用到的模块,采用它自身特定的方式来为项目进行配置,所以,开发者几乎不需要进行大量的手动配置就能使项目正常运行。
Spring Boot框架的特点如以下几点所示:
1. 可以创建独立的Spring应用程序;
2. 框架嵌入Tomcat,无需手动配置WAR文件;
3. 简化了Maven配置;
4. 支持自动配置Spring;
5. 提供了生产就绪型功能,比如指标,程序健康检查和外部配置;
6. 没有代码生成和XML文件配置。
Spring Boot伴随着Spring 4.0框架一起诞生,而Spring框架作为当下主流的企业级框架,拥有一整套相关的项目,如图2.1所示。
图2.1 Spring生态
Spring Boot在这样一个大的生态中,能够为开发者带来不一样的开发体验,简化一些已经过时的技术,让开发者能够快速上手。Spring Boot的核心组件如图2.2所示。
图2.2 Spring Boot核心组件
2.1.2 Angular框架
Angular是一个由谷歌开发与维护的用来开发跨平台应用程序的框架,同时适用于手机与桌面。开发者可以使用Angular构建适用于所有平台的应用。
Angular这个框架的前身是AngularJS框架。AngularJS于2009年诞生,由Misko Hevery等人开发并成立项目,后来整个项目被谷歌收购。
AngularJS是一款非常优秀的前端框架,它基于Javascript开发,使用时仅仅需要将<script>标签添加到HTML页面之中。AngularJS以指令的方式来扩展HTML的功能,并且它利用Model和表达式来实现前端数据的双向绑定。AngularJS最为核心的特性有:
1. MVW(Model-View-Whatever);
2. 模块化;
3. 自动化双向数据绑定;
4. 语义化标签;
5. 依赖注入等。
Angular是由AngularJS升级而来,那么相对于AngularJS,新的Angular做出了如下改变: