APP下载

基于Springmvc技术的图书智能荐购系统设计

2022-05-11广东石油化工学院图书馆王洪华

内江科技 2022年4期
关键词:数据模型图书分类

◇广东石油化工学院图书馆 王洪华

广州软件学院图书馆 陈婧仙

本文分析高校图书采访的业务流程及存在问题,对读者和采访人员两者的功能需求进行分析,在此基础上选择Springmvc技术,对系统整体架构、系统的功能结构和核心数据模型进行设计,实现一个操作方便、功能相对完善的高校读者图书荐购管理系统。

随着智慧校园、智慧图书馆的建设发展,未来图书图书馆采访工作的智能化、个性化是发展趋势。图书采访工作作为图书馆一项重要的基础工作,也要与时俱进,依托学校各方面资源,建立起网上图书智能荐购系统,不断优化采编工作方式、提高采访质量,满足师生日益增长的个性与文化需求。

1 图书荐购系统设计思路

1.1 研究现状

在国内,当前多数图书馆普遍采用的系统,如:“汇文图书馆管理系统”、深圳图书馆的“图书馆自动化集成系统(ILas)”存在明显的不足,其设置简单、功能较少,而且平台功能可扩展性差等[1],更没有相关的智能荐购功能或者智能辅助程序。

在国外,一些国外学者对图书荐购系统的相关问题进行了关注和研究,强调建设图书荐购系统在高校图书馆建设中的重要性。在系统的技术方面,提出了要综合读者的荐购需求,挖掘文献信息之间的联系,利用网络服务构建知识库等[2]。Kuroiwa等学者提出了为使读者荐购图书更为方便,可建立一个综合的获取图书的数据库。Pitcher等学者提出了为方便读者荐购图书,可将市场上能购买的图书集成到数据库的方法[3]。从读者的个性化需求、信息技术实现等多方面进行理论研究与实践。

国内外图书馆研究者对于图书荐购系统的相关研究成果已经丰富,研究不仅指出了市场上通用系统的不足,还指出有技术实力的图书馆应从自身发展需求或根据存在问题,建立合适的图书荐购系统,那么,在当前智慧化环境下,围绕师生个性化需求、高效率、智能等一系列新的关键特征,构建新一代的智能荐购系统成新的需求。

1.2 应用情况

图书采购由图书馆采编部门负责,这个过程分为”采”和“编”两个步骤,其中,图书“采”的过程即是根据学院科研、教学需求进行图书的种类选择,涉及到的三个主要关键原则:学院专业(学科)设置需求、学院科研需求、读者综合喜好需求。学院专业(学科)设置需求原则,主要就是依据学院开设专业,有针对性的进行专业性图书类别的采购,满足师生在课余时间有大量的相关专业图书辅助学习,并且每年按照生均至少一册增加。学院科研需求,主要是根据学院每年科研计划或社会研究热点进行有针对性图书采购,为学院师生开展各种项目研究或实验提供相关文献支持。读者综合喜好需求,则是根据大学生综合素质培养需求及业余兴趣爱好进行图书的选择,例如,生涯规划、时间管理、生活百科等综合性或者兴趣拓展需求图书。

高校图书馆馆藏文献采访涉及两个重要工作:图书查重、采访任务分配。其中,采访任务分配,主要是根据馆员专业背景,将图书供应商提供的每一个批次图书依据分类拆分成多分,分发到相关专业背景的馆员,由相关专业背景馆员进行专业需求调研、分析,选择合适的馆藏图书。当然由于每个学院图书馆馆员具有相关专业背景馆员的人数不一定与全院专业设置相匹配,这种情况,通常由图书馆内部独立的采编部为主导进行,通过联系各系专业负责人协助图书选择,最终由图书馆采编部负责整理汇总。这个过程在人力及时间宽裕情况下,还需要涉及到调动学院学生参与到馆藏图书选择过程中,最大限度完善馆藏文献建设质量。

完整的采访流程存在问题如下所示:

(1)具有相关专业背景馆员不足,馆内无法完成图书采访任务分配,选书质量降低。

(2)采访任务分配过程,人工对图书数目数据依据专业分离传递到采访负责人手中,费时费力,而且容易造成数据丢失或者重复分发。

(3)无法满足读者的学习、教学、科研等需求,读者需要专业图书或者填写一些稀缺的图书荐购单时,需要主动到图书馆进行推荐购买。无法将选择或填写的图书信息快速反馈给图书馆,指导图书馆采访工作。

(4)采访涉及的图书数据量大,且涉及学科众多,依靠人力,难以有效过滤不需要的数据。

面对如上的几个问题,当前市面上存在的采访辅助系统或者荐购系统,普遍很难完全解决,其中的关键在于系统缺乏一定智能化功能。

1.3 需求分析

根据图书馆自身采访的业务情况以及智慧图书馆建设理念,设计一套相对智能的图书荐购系统,帮助图书采访馆员最大程度地减少工作流程,减轻大量人工分发图书数目工作量,提高工作效率,避免选书荐书的重复操作。也方便学校广大师生随时获取最新的出版书籍信息,根据自身的学习、教学、科研等需求选择需要图书或者填写一些稀缺的图书荐购单,并将选择或填写的图书信息快速反馈给图书馆。总体上的主要需求如下所示:

(1)基础功能,涵盖图书数据的导入导出、图书数据批量管理、读者信息管理、读者主动荐购图书等。

(2)智能化功能,集成数据智能分析算法,涵盖读者的个性需求分析、图书价值分析功能。

2 图书荐购系统设计过程

2.1 Springmvc技术介绍

Springmvc技术无论是国内还是在国外,在企业的软件开发中占有绝对的领头地位,这与其中的基于简单配置即可快速开发高性能、高可用、高可靠的软件应用有关,其核心的程序分层设计模式mvc也成为软件开发的典型代表,m(model)代表模型,所有的用户数据、状态以及程序逻辑;v(view)代表视图,将数据结果呈现在用户面前,可以理解为展示数据的界面,对于不同的数据绑定不同的视图界面;c(controller)代表控制器,主要是接收用并处理用户的交互数据,是介于模型和视图的中间桥梁。

Springmvc技术的应用使得java项目涉及的各个组件分工更明确,组件配合过程中通过依赖注入方式进行适配,极大降低了组件的耦合度;同时拥有良好的技术生态,许多智能算法技术框架可以非常容易的集成,比如集成mahout(算法的程序实现集合框架),只需要书写配置文件名为spring-mahout.xml并加入到springmvc项目的资源录下,同时引入程序,即可完成mahout算法程序的集成。同样,其他业务逻辑等spring配置则只需要声明引入即可。

2.2 图书荐购系统架构设计

(1)功能结构。图书荐购系统功能主要包括读者模块、管理员模块。读者模块包含读者通过浏览器登录、选择图书书目、手工填写荐购图书信息、查询荐购历史记录、查询到库图书。图书馆管理员模块包括通过浏览器登录、导入图书信息、查询读者荐购图书、导出荐购图书、用户管理、系统设置、智能数据过滤等功能。

(2)技术选型。项目架构上采用B/S结构,即浏览器和服务器结构。在技术选型上,采用Springmvc开发技术。Spring还负责对整个系统访问控制、业务逻辑、智能分析算法、事务管理进行全局控制,主要采用注解方式进行,注解标签包括@Controller、@Service、@Repository等。数据存储方面,由于使用hibernate作为程序对象与关系数据库映射框架,数据库选择可以依据需要或者现有数据库环境随时切换,本项目根据开发机器上现有数据库系统,就直接采用SqlServer2008。项目整体的技术架构如图1所示。

图1 项目整体架构

智能算法上采用经典的slope one算法,这个算法基本原理是可以通过对物品的隐性评分,预测相似用户对未知物品的评分数,通过评分即可猜测用户对该物品的喜欢程度。在本系统中,该算法主要根据读者的图书借阅历史记录、专业、年级、兴趣等信息,建立读者特征新后,为每个读者去除与这些特征不相干的多余图书数据,也就是从海量的各类图书中进行智能过滤掉,为读者屏蔽掉无兴趣(无价值)的图书信息。该算法目前有许多实现的程序,只需要集成在本系统中,给予输入数据模型即可获取数据分析结果。

(3)数据模型。数据主要是基础功能的图书信息分类模型和智能图书信息过滤模型。

a、图书信息分类模型。

图书荐购系统数据模型主要有图书分类模型和图书信息模型、用户、部门(系部)等模型,其中最核心的是图书分类和图书信息,图书的分类在图书领域里主要是依据《中国图书馆图书分类法》,以下简称《中图法》,主要是针对图书分类排架,其计算机应用中以MARC(Machine Readable Catalog的缩写)数据模型表示,提供复杂的计算机数据存储检索使用[4]。但是MARC数据模型过于复杂,多数情况下并不能适用简单的互联网应用,比如:学院依据根据专业设置,将不同批次图书归类到设定的专业类别中,如果应用《中图法》无疑增加系统设计难度,所以在图书荐购系统中,将结合《中图法》重新设计图书分类和图书模型。

按照《中图法》图书分类是多级分类,每一个大类用大写字母表示,大类下会有多个二级分类(以一级大类加一个数字表示),二级分类下可以有多个三级分类(以二级分类加一个数字表示),以次类推,而一种图书的所属类别,根据图书出版时给予分类号确定,图书部分数据如表1所示。

表1 图书部分数据

那么在设计荐购系统时,希望所有类别以一个树形菜单的形式展现,其显示的名称可以是自定义的名称,可以展开子类别,当选择一个类别时,这一大类图书及子类图书都出现。因此,结合表1数据的分类号,可以设计图书分类和图书的类模型,如图2所示。

图2 图书分类和图书类模型

b、智能图书信息过滤模型。

以某一批次的荐购图书信息过滤为例,通过以同一专业、年级等作为相似指标,统计相似读者的检索关键词(关键词1、关键词2)检索次数作为读者的兴趣值,该值范围基本在1至5分之间,如果是3分以上的那么就可认定读者是有兴趣的。根据一些数据总结,可以构建一个矩阵结构如表2所示。

表2 Slope one基础数据表

表中的“?”代表读者3没有检索过关键词2,但是可能的存在兴趣值,该值由Slope one算法进行计算,其结果值是在限定1至5分之间,结果如果低于3分,读者3对关键词2所对应的图书基本可以确定为无兴趣,那么这样的图书在荐购系统中就应该对读者3过滤屏蔽,不应该再展现在读者的选书界面中。在系统上对应的类模型设计如图3所示。

图3 Slope one算法数据类模型

3 图书荐购系统设计实现

在构建数据模型(包括读者基本信息表、部门院系表等主要数据模型)后。主要实现读者模块和管理员模块两个功能:

(1)实现图书荐购读者客户端,定期发布图书采访数据,发布到网上,让读者参与到图书馆采访工作中,实现读者网上选书、填写书单,向图书馆采购提供采访依据。整体时序图如图4所示。

图4 图书荐购时序图

(2)实现图书荐购数据管理,系统可以定期采集或导入各个书商的数据,实现图书数据批量管理,读者信息进行管理,选购图书批量导出等功能。整体时序图如图5所示。

图5 图书荐购数据管理时序图

4 结束语

基于Springmvc技术的图书智能荐购系统研发具有完备的功能,方便学校广大师生获取最新的出版书籍信息,根据自身的学习、教学、科研等需求选择需要图书或者填写一些稀缺的图书荐购单,并将选择或填写的图书信息快速反馈给图书馆。最大程度地减少图书馆馆员工作流程,提高工作效率,避免选书荐书的重复操作,间接帮助优化馆藏建设,提升馆藏质量。

猜你喜欢

数据模型图书分类
分类算一算
图书推荐
分类讨论求坐标
欢迎来到图书借阅角
面板数据模型截面相关检验方法综述
数据分析中的分类讨论
班里有个图书角
教你一招:数的分类
经济全球化对我国劳动收入份额影响机制研究——基于面板数据模型
基于数据模型的编程应用