基于推荐算法的图书馆管理系统的设计与实现 计算机科学和技术专业.docx
基于推荐算法的图书馆管理系统的设计与实现随着互联网技术的快速发展,对于图书馆管理系统的需求也在进一步提升。由于图书的种类越来越多,其相应的业务数据都不断提升,使得图书馆中的图书数据信息量己经远远超出了人工管理的水平。为了进一步给广大读者提供更为便捷的服务,可以按照读者的实际需求提供个性化定制,而当下的大多数图书馆系统中还不能满足用户的个性化定制服务。目前大部分高校蕴藏着大量的图书借阅信息,如何利用这些信息、方便读者的借阅过程且预测读者的借阅需求,进而推荐满足读者需求的图书信息是值得研究的问题。因此,本论文的主要工作是在河北金融学院信息工程与计算机学院处设计一个图书管理与推荐系统。本系统使用JaVa为开发语言,选择JSP为开发框架,SSM为系统架构、MySQ1作为系统数据库,同时,为了使用户能够有更加个性化的体验,本系统采用了KFeanS算法将用户归类,并为用户提供了不同的图书推荐。以达到图书管系统千人千面的效果。本课题研究的系统对目前图书馆所遇到的实际问题提出了解决方案,帮助校园更加方便地对图书馆进行管理,其利用空间较大,结合大数据技术的图书管理系统,可根据每位用户的借阅习惯,提供个性化服务,既能提高用户的阅读积极性和知识面,也能增加了用户对系统的粘度,再利用相关算法对其后台所积累的数据进行挖掘分析,提高管理者的管理效率和资源使用率。关键词:大数据;图书管理;个性化推荐;JaVa;JSP;SSM;MySQ1;K-meansABSTRACTWiththerapiddeve1opmentofInternettechno1ogy,thedemandfor1ibrarymanagementsystemsisfurtherincreasing.Astherearemoreandmoretypesofbooks,theircorrespondingbusinessdataareconstant1yimproving,makingtheamountofbookdatainformationinthe1ibraryfarbeyondthe1eve1ofmanua1management.Inordertofurtherprovidemoreconvenientservicestoreaders,persona1izedcustomizationcanbeprovidedaccordingtotheactua1needsofreaders.However,mostofthecurrent1ibrarysystemscannotmeetthepersona1izedcustomizedservicesofusers.Atpresent,mostco11egesanduniversitiescontaina1argeamountofbookborrowinginformation.Howtousethisinformationtofaci1itatetheborrowingprocessofreadersandpredicttheborrowingneedsofreaders,andthenrecommendthebookinformationthatmeetstheneedsofreadersisaprob1emworthyofresearch.Therefore,themainworkofthisthesisistodesigna1ibrarymanagementandrecommendationsystemattheSchoo1ofInformationEngineeringandComputer,HebeiUniversityofFinance.ThissystemusesJavaasthedeve1opment1anguage,JSPasthedeve1opmentframework,SSMasthesystemarchitecture,andMySQ1asthesystemdatabase.Atthesametime,inordertoenab1euserstohaveamorepersona1izedexperience,thesystemusestheK-meansa1gorithmtoc1assifyusers.Andprovideuserswithdifferentbookrecommendations.Inordertoachievetheeffectofthousandsofpeop1einthe1ibrarymanagementsystem.Thesystemresearchedinthissubjectproposesso1utionstothepractica1prob1emsencounteredbythe1ibraryatpresent,andhe1psthecampustomanagethe1ibrarymoreconvenient1y,anditsuti1izationspaceis1arger.Thebookmanagementsystemcombinedwithbigdatatechno1ogycanprovidepersona1izedservicesaccordingtotheborrowinghabitsofeachuser,whichcannoton1yimprovetheuser,sreadingenthusiasmandknow1edge,buta1soincreasetheuser,sviscositytothesystem,andthenusere1ateda1gorithmstodea1withit.Thedataaccumu1atedinthebackgroundisminedandana1yzedtoimprovethemanagementefficiencyandresourceuti1izationrateofmanagers.Keywords:Bigdata;bookmanagement;persona1izedrecommendation;Java;JSP;SSM;MySQ1;K-means目录第1章雌61.1 研究背景及意义61.2 相关技术简介6第2章系统需求分析92.1 功能需求分析92.2 非功能性需求112.3 系统的可行性分析11第3章系统设计133.1 系统概要设计133.2 数据库设计133.3 功能模块设计14第4章系统实现164.1 数据库实现164.2 功能模块实现18第5章系统功能测试325.1 测试目的325.2 测试结果325.3 推荐模块测试34第6章总结与展望36弁考文献37第1章绪论现代信息技术的突飞猛进的发展为各行各业提出了更多的机遇与挑战,数据库技术的不断成熟使得各种管理信息系统的数据库中沉积了大量的数据,如何利用这些数据为组织服务,信息管理系统应运而生。1.1 研究背景及意义随着互联网技术的迅猛发展,传统的图书馆管理模式也得到了进一步的升级,随着数据的进一步增长,对于信息化处理的需求也在随之提升。越来越多的学者也开始研究高校图书馆信息系统,在当下的日常生活之中,的各个步骤都逐渐采用数字化管理方法来代替传统的人工管理,从而积累了大量的数据,并积累了一定数量的有价值的图书馆不仅是学子们获取知识的主要场所,也是学术的信息化中心。随着互联网技术的快速发展,对于图书馆管理系统的需求也在进一步提升。由于图书的种类越来越多,其相应的业务数据都不断提升,使得图书馆中的图书数据信息量已经远远超出了人工管理的水平。为了进一步给广大读者提供更为便捷的服务,可以按照读者的实际需求提供个性化定制,而当下的大多数图书馆系统中还不能满足用户的个性化定制服务。1.2 相关技术简介1.2.1 JSP简介除了提高软件互操作性,JaVaSCriPt语言是一款主要用于事件驱动的脚本语言。其可以在移动终端的浏览器页面中嵌入并按照实际需求执行相应的HTM1代码。JaVaSCriPt使Web开发人员能够更有效地控制页面。与JaVa语言相同,JaVaSCriPt编程语言也可以实现跨平台编程。其可以独立于任何的操作系统从而最终实现项目的集成。JaVaSCriPt还同时拥有占用少量系统和网络资源的优势。因此,嵌入式JaVaSeriPt在JSP页面中实现了一些检测功能,这将使网页更具交互性,响应速度更快,效率更高最开始HTM1用Serv1et输出的过程非常麻烦,而JSP是一种Java和HTM1共同存在的架构,如用JSP来代替输出HTM1,整个过程就会简单很多。JSP架构中由前端创建表单,之后发送给后端实现前后通信。在进行软件的开发过程中,选取合适的开发语言是成功的关键。而开发方法也无外乎两种,一种是面向对象的程序设计开发,多常见使用JaVa语言、C+语言等。另外,一种是面向过程的开发,常见的开发语言如C语言等,为了丰富并完善系统的使用特性,有时也会将这二者进行混合。通过分析可知,JSP页面是由Java、HTM1这两类代码构成的,当客户端收到请求后,服务器会对JaVa代码进行处理,处理完毕后,会有HTM1页面形成,并且将具体情况向客户端反馈。经分析可知,JavaSerV1et是JSP技术能够发挥作用的前提,要想开发大规模Web程序,就必须得此技术和JavaServ1et和充分配合。通过分析发现,Java技术的各项功能,JSP都具备,同时它的可靠性以及安全性也极高。1.2.2 MySQ1简介MySQ1为传统关系性数据库,具有很好的开放式架构,因为数据库稳定性和可靠性能够得到很好的保证,并且对于个人使用是完全免费开放的,因此得到了广泛的应用。MySQ1的语言是非结构化的,用户可以处理数据。MySQ1被广泛使用,因为它的语言和结构相对简单,但是它的功能和存储信息非常强大。特别是当不需要事务处理时,MySQ1是管理内容的最佳选择。其源代码是公开的,这使得该数据库可以按照自身的实际需求进行定向化修改,从而满足后续的开发要求。在实际使用过程中,其适应能力强的特性在跨平台应用上显得格外突出,不仅语句的杳询过程很快,对于数据的基本增删改查等操作也是非常迅速。安装过程也相对简易。在编写SQ1语句时使用也是方便的,不需要像其他语言那样需要编写更多的语句。上世纪九十年代末期,首版MySQ1数据库问世,此数据库能够进行多线操作模式的提供,还能够进行各类编程语言编程接口的提供,同时它还可以对诸多字段类型提供支持,利用运算符来对查询中的两类操作提供支持,这两类操作首先是WHERE操作;其次是SE1ECT操作。作为开源数据库,不论是谁,都可以利用公共许可证来下载MySQ1,同时还能够按照自身实际需求来修改它。通过分析发现,由于MySQ1具备许多优点,比如适应性很强,十分可靠等,所以受到许多人的青睐,它并不用在大型仓库里保存数据,只需要利用单独标来保存数据,如此不但更加灵活,而且速度也很高。最开始设计这一数据库,是准备在对大规模数据库进行处理时来对其进行运用,和当前已有数据库相比,其处理效率要高得多,同时即使在较为严格的生产环境里也能够使用很长时间,虽然当前这一数据库还没有完全开发出来,然而其当前的功能集已经足够丰富,由于其具备许多优点,比如十分安全、效率很高等,所以在Intemet上的数据库中极具适用性。1.2.3 CSS简介CSS英文全称CascadingSty1eSheets又叫层叠样式表,是一种用来表现HTM1或XM1等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。CSS能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。1.2.4 Tomcat简介Tom