基于Entity Framework的图书馆光盘管理系统

2015-09-27 00:33林平荣鲁昭黄煜祺广州大学华软软件学院软件工程系广州510990
现代计算机 2015年24期
关键词:票证光盘服务器

林平荣,鲁昭,黄煜祺(广州大学华软软件学院软件工程系,广州 510990)

基于Entity Framework的图书馆光盘管理系统

林平荣,鲁昭,黄煜祺
(广州大学华软软件学院软件工程系,广州510990)

0 引言

目前广州大学华软软件学院(以下简称华软学院)的图书馆大约有4万张随书光盘,并有逐年增长之势。随书光盘所提供的各种实用教学实例及丰富的配套资源对图书的使用具有很大的帮助[1],深受广大读者的喜爱。如何管理和使用随书光盘成为图书馆越来越突出的问题。

针对光盘资源的管理,各图书馆不尽相同,目前主要有以下三种方法:(1)书盘合藏。该模式最简单,但是容易造成光盘丢失以及管理上的困难。(2)书盘分藏。该模式通过对光盘单独进行编目加工,方便部分缺乏校园内上网条件的读者,但随着光盘数量及借阅次数的增加,也容易丢失或是发生磨损。(3)信息化数字化管理。该模式是将光盘复制到图书馆专用服务器上,然后上传到校园网上供读者随时随地下载利用[2]。特点是方便读者校园内自由下载借阅,彻底解决了光盘丢失、磨损问题,管理方便。目前应用最为广泛的管理模式为第三种,即信息化数字化管理模式。华软学院的图书馆现在仍采用书盘分藏的模式来进行光盘管理,弊端明显。因此,采用信息化数字化管理模式,建立一个高效的图书馆光盘管理系统显得十分必要,它可以使图书馆更加有效地管理光盘数据,实现资源共享,推动图书馆的现代化。

1 图书馆光盘管理系统

图书馆光盘管理系统 (CD Management System,以下简称CMS)的主要目标是改善图书馆的日常光盘管理流程,实现光盘资源的信息化数字化管理。针对华软学院图书馆在光盘资源管理过程中所存在的问题,总结出对系统的功能需求,主要有以下五个方面:

①实现对光盘资源的申请与处理。由于现有随书光盘数量庞大,大部分光盘资料大小都在300M以上,如果把全部光盘资料放置于服务器,会给服务器带来巨大的压力。为此,CMS以“按需分配”为原则对光盘文件进行管理,允许读者以申请的方式来获取光盘资源。

②允许管理员用户录入随书光盘的书名、编号、作者、出版社等信息,实现光盘信息的增删查改等功能,提供接口实现图书与读者信息的批量导入。

③针对不同的用户配置不同的权限。匿名用户只能够检索图书信息;登录认证用户可以申请、下载光盘资源以及查看下载历史、资源申请的处理情况等操作;图书管理员则能够查看、处理普通用户的操作记录和光盘资源的申请信息,并且可以禁止或解禁非法操作用户等更高的权限等。

④提供一定的安全机制。用户可根据不同的授权访问全部或者本人的相关信息,授权外的信息将无法访问,从而能防止用户的无意或恶意删改,保证相关信息的安全性。

⑤具备人性化的图形用户界面,操作简单,同时还应该有比较好的可扩展性,方便以后的二次开发。

基于以上需求,CMS主要功能模型结构如图1所示:

图1 功能模型结构图

2 CMS的主要业务流程

读者光盘资源申请的具体流程如图2所示:

图2 读者光盘资源申请流程图

管理员处理光盘申请的流程如图3所示:

图3 管理员处理读者申请流程图

3 关键技术

为了更好地提高检索性能,CMS将对SQL Server数据库中符合要求的记录集进行分页查询。通过计算符合的记录集记录数和每页显示的记录数计算出总页数,在用户翻页时,自动匹配下一页的记录数。这样的分页查询只需提取每页显示记录数的记录,从而进一步提高检索信息的速度,降低一次把全部记录提取出来的性能消耗,增强读者使用体验。在CMS的实现过程中,将会使用基于LINQ to Entities技术来对数据进行分页,其过程为[5]:

当有过多用户进行光盘资源的下载操作时,会对服务器的性能造成一定的影响甚至可能崩溃。CMS的光盘资源管理服务器是基于Serv-U的FTP服务器,程序通过该FTP服务器的ini配置文件,实现在后台对用户进行限速等管理操作。同时CMS通过FTP管理功能统一控制同时在线用户数,从而实现对管理员上传资源和读者下载资源的并发控制,保证CMS的运行效率和用户的下载体验。

读者登录到CMS进行相关操作,需要通过FormsAuthentication提供静态帮助器方法和属性用来管理Forms身份验证票的验证,它为每个登录的用户都保存了权限票证。用户的操作都要跟进它的票证权限来进行验证。FormsAuthentication的登录票证验证保存过程为:

①生成登录票证

FormsAuthenticationTicket ticket=new FormsAuthenticationTicket(票证版本,票证标识,票证登录时间,票证过期时间,票证不永久保存,票证角色);

②加密票证并保存至用户Cookie

HttpCookie cookie=new HttpCookie(FormsAuthentication. FormsCookieName,FormsAuthentication.Encrypt(ticket);

Response.Cookies.Add(cookie);

为了更好的提高工作效率,最大程度化的减少人工输入数据的工作量,CMS支持图书、读者信息的基于Excel文件一键导入功能。其核心是Excel文档的打开与关闭,并把Excel文档中相关信息匹配保存到数据库中。在实现之前,需要先导入Microsoft.Office.Interop. Excel命名空间。其关键代码如下[6]:

4 系统实现

CMS采用ASP.NET技术构建Web系统,以ADO .NET Entity Framework的实体映射框架实现数据访问,使用SQL Server 2008作为后台数据库,使用Visual Studio 2010作为代码开发工具。系统设计采用模块化的设计方式,分为前台与后台,功能如下:

①前台

前台可以让用户进行光盘资源的检索、查看已上传的光盘资源列表以及所有的光盘资源列表等,并可以登录查看自己的申请、下载记录、修改密码以及系统消息,前台界面如图4所示。

②后台

CMS后台是图书管理员或系统管理员对CMS相关信息进行管理的平台。不同权限的图书管理员与系统管理员所浏览的后台界面会有所不同。管理员可以在后台对系统日志、图书信息、光盘信息、用户的资源申请、系统设置、安全设置等作统一管理,后台界面如图5所示。

CMS现已投入使用2年多,共处理学生申请数量6000余次,光盘资源下载次数达到5万多次,运行稳定、快速、安全,受到师生的广泛欢迎,达到了预期的效果。

5 结语

CMS的实现能够提高图书馆本身管理水平,使得图书馆可以更有效地管理光盘数据,实现资源共享。但随着上传光盘资源的不断增多,会增加服务器的存储负荷和故障风险。同时在面对新图书日益增加的情况下,CMS的性能和数据安全性也会面临重大考验。而CMS作为华软学院图书馆信息平台的子系统,其信息不能与之同步更新,会对CMS相关数据的实时性有较大影响。所以,在日后的再开发与维护中,应加强对服务器存储空间及相关硬件的建设,并且与图书馆信息平台做更多的深度整合,使信息与功能更加完整。

图4  CMS前台界面

图5  CMS后台界面

[1]陈锐.随书光盘管理方法分析.图书馆学研究,2005(2):16-17.

[2]丁萍.高校图书馆随书光盘管理系统的设计与实现.青海师范大学学报,2010(2):103-105.

[3]王占勇,俞涛,王尧.Entity Framework技术在出差笔记本借用管理系统中的应用研究.信息系统工程,2014(9):94-96.

[4]Boehm,Anne.Murach's ADO.NET 3.5,LINQ,and the Entity Framework with C#2008.MURACH MIKE&ASSOC INC,2010:109-110.

[5]Julia Lerman.Programming entity framework:building data centric apps with the ADO.NET entity framework.O'REILLY&ASSOC INC,2010:58-59.

[6]房大伟.ASP.NET开发实战1200例.北京,清华大学出版社,2011:342-343.

Entity Framework;Library;CD Management System;ASP.NET

Library CD Management System Based on Entity Framework

LIN Ping-rong,HUANG Yu-qi
(Software Engineering,South China Institute of Software Engineering.Guangzhou University,Guangzhou 510990)

1007-1423(2015)24-0056-04

10.3969/j.issn.1007-1423.2015.24.014

林平荣(1981-),男,福建漳州人,硕士,研究方向为软件工程、机器学习

鲁昭(1983-),女,湖北武汉人,本科,助理馆员,研究方向为图书馆信息化管理

黄煜祺(1990-),男,广东广州人,本科,研究方向为软件工程

2015-06-18

2015-07-31

随着计算机与多媒体技术的普及和应用,图书出版形式呈现多样化,随盘图书越来越多,而在高校数字图书馆的建设过程中,数据存储和光盘共享是一个关键环节,也是一个难题。针对广州大学华软软件学院图书馆在光盘管理方面存在的问题,结合实际情况提出一个基于Entity Framework的光盘管理系统,分析系统实现的关键技术并给出最终实现的效果。

Entity Framework;图书馆;光盘管理系统;ASP.NET

广州大学华软软件学院科研项目(No.ky201116)

With the popularization and citation of computer and multimedia technology,the form of book publication is diversified,and more and more books are published.In the process of university digital library construction,data storage and optical disc sharing is a key link,but also a problem.In view of the problems existing in the management of CD South China Institute of Software Engineering.GU Library,combined with the actual situation presents a CD management system based on the Entity Framework,analyses the system to achieve the key technology and gives the final realization of the effect.

猜你喜欢
票证光盘服务器
光盘行动
宁海“票证的故事”
通信控制服务器(CCS)维护终端的设计与实现
PowerTCP Server Tool
张宝红:中国票证拍卖第一人
光盘小熊
得形忘意的服务器标准
计算机网络安全服务器入侵与防御
光盘光荣
投资粮票成富翁