图书馆特色数据库建设发布系统设计计算机论文

摘要:

图书馆特色数据库建设发布系统设计计算机论文

介绍了基于技术开发的图书馆自建特色数据库管理系统,该系统前端应用程序采用技术开发,底层数据库采用目前流行的SQL Server2005。本系统功能完备,可实现对馆藏图书、期刊、报纸等纸质文献的数字化管理和信息发布,具有较强的实用性。

关键词:

特色数据库;;SQL Server;管理系统

中图分类号:

TP393文献标识码:A

文章编号:

1673-1980(2011)02-0164-03

图书馆特色数据库建设历来是图书馆数字资源建设的重要组成部分,对于具有丰富特色馆藏文献的图书馆来说尤其如此。因此,许多图书馆都根据自身条件对这些重要文献进行了数字化,如购买数字化系统,或与数字资源供应商合作。我校图书馆近几年进行了数字化工作流程设计和数字化系统的开发,逐渐建立起了一套具有自有知识产权的特色数据库建设发布系统。

是微软推出的新一代Active ServerPage,是微软发展的新的体系结构的一部分,其全新的技术架构让编程变得非常容易。与其他WEB程序技术相比,具有许多新的特点:真正的面向对象编程语言,功能强大,简洁易学;编译型编程框架,程序执行速度快;WEB页面创建简单易行;

处理数据访问,使数据访问更加快速可靠等。基于的这些优秀特性,采用进系统开发便成了我馆的首要选择。

1特色数据库建设发布系统架构

过去许多此类应用系统的开发,多采用Client/Server的二层体系结构,并且应用广泛,在这种结构中应用程序逻辑通常由客户端程序实现,服务端负责进行客户端的数据访问和处理请求,并将处理和访问结果返回客户端。但是,Client/Server结构存在一些问题,当客户端数目激增时,服务器端的性能会因为负载过重而大大降低;最重要的是,一旦业务逻辑发生变化,客户端和服务器端的应用程序都需要进行修改,给应用维护和升级带来极大的不便等等。

因此,目前数据库应用程序的开发已经从传统的Client/Server结构向三层结构转变。所谓三层体系结构,即显示层,业务逻辑层和数据层。业务逻辑层是在客户端与数据库之间加入了一个“中间层”,也叫组件层,整个架构是逻辑上的三层结构而非物理结构,我们即可以将这三层程序逻辑结构放到一个服务器上运行,也可以放置到三台服务器上。在特色数据库建设发布系统中使用的三层架构如图1所示。

2特色数据库建设发布系统功能描述

2.1特色数据库信息发布实现各类特色数据库信息发布和资源检索,文献类型包括数字图书、数字期刊、数字报纸、图片、视频等。

信息发布包括最新资源、资源分类导航和学科导航、资源排行等,每种资源均有信息浏览的详细页面,并提供全文下载服务;资源检索有简单检索和高级检索,简单检索是一种快速简便的检索方法,不需要读者进行过多的条件输入;高级检索则提供了多种检索途径,如书名、刊名、作者、关键词、分类等,可以为读者提供更准确的检索结果,缩小结果范围。

2.2特色数据库建设

这部分功能是特色数据库建设发布系统的主要部分,每种类型的文献都设计了相应的数字化流程,根据这些流程,系统设计了相应的功能。以图书、期刊和报纸等纸质文献为例,其工作流包含两部分,即管理工作流和数字化工作流。(1)管理工作流:创建特色数据库=>建立数字化任务=>制定数字化清单=>任务分配=>任务审核=>资源发布。(2)数字化工作流:任务接收=>文献数字化(包括元数据标引、数字全文管理)=>提交任务。每个工作人员的当前任务完成后,管理员可以对每个工作人员的工作进行审核,如有问题,将该任务重新返回给工作人员进行错误修正,当任务合格后,资源才能发布出去,工作人员才可以进行下一个任务。

对于图片、视频、互联网文档等资源,系统也设计了对应的工作流程,本文就不再赘述。

2.3系统管理

该部分功能包含了系统变量设置、用户管理和统计功能。用户分属不同用户组,针对每个用户组赋予用户权限,如管理员可对特色数据库进行信息维护、任务分配、用户的添加删除、用户权限管理、工作质量审核、资源统计、所有工作量统计等;普通用户可以进行该用户任务的文件上传、文件删除、元数据管理等操作,进行自身的工作量统计,自身用户的信息维护如密码管理等。

系统功能结构如图2所示。

3数据库设计

本馆的特色数据库建设发布系统采用了SQL2008作底层的数据引擎进行数据管理,主要数据表包括:特色数据库信息表,用于存储特色库基本信息;文献信息表,用于存储元数据;任务表,用于存储管理员制定的任务列表信息,如任务内容,任务进度,任务执行人等;用户组表,用于存储用户组信息和权限;用户表,用于存储用户信息;系统表,用于存储系统环境变量;工作日志表,用于存储工作日志记录,便于统计工作量;资源访问记录表,用于存储读者访问特色数据库信息量,如浏览量、下载量等。

4系统功能实现

系统各功能采用C%语言、HTML语法和面向对象程序设计技术实现,所有业务逻辑、业务对象都抽象为实体类,在三层体系结构中,表现层、业务逻辑、数据层各施其责,各层通过接口进行通信,互相协同又相互独立。

在表现层,系统采用了DIV+CSS的结构布局,便得界面的设计更加灵活,用CSS模拟了许多JAVASCRIPT脚本动作,便得系统运行速度更快,兼容性更好。同时,系统设计了多种自定义控件,利用Repeater控件进行数据绑定,利用ITEMPLATE模板进行数据的'格式化显示,虽然在所有数据控件中,Repeater最简单,本身没有内置数据格式化功能,但是通过结合ITEMPLATE模板,通过编程动态改变其显示模板和所绑定的数据集,其中数据显示控制的灵活性则是最强的。

在业务逻辑层,将各类业务操作和业务对象进行封装,主要类如下:MARC类封装了图书期刊等数字文献的元数据属性和操作,如书名、刊名、作者、出版社等字段的存储和获取。BusinessFactory类封装了所有业务逻辑,如创建特色数据库、创建数字化任务列表、任务分配和审核、元数据的添加删除、数字全文文档管理等。

USER类封装了用户信息、用户权限等。Task类封装了数字化任务的创建、任务清单管理、任务分配、任务审核等。Stat类封装了所有数据统计功能,如工作日志统计、资源访问统计、数据报表、图形绘制等。

在数据层,主要利用提供的各类数据库操作,对业务数据进行操作,在本系统中将这些功能封装在SQLHelper类中,该类负责利用的各种特性,实现所有数据库表的操作,如记录的添加删除、更新,记录集的获取等。

以下则是MARC类中获取某个字段数据的方法源码:public string getFieldData(string fieldname){int fieldnum=umOfField(fieldname);

if(fieldnum==0)

{string fields=new string;

fields="";

return fields;

}

else{string fields=new string[fieldnum];

int indexoffields=0;

int lengthoffield=0;

int startaddressoffield=0;

for(int i=0;i

numOfAllFields;i++)

{if(InfOfFields[i].

Substring(0,3)==fieldname)

{lengthoffield=Convert.

ToInt32(InfOfFields[i]tring(3,4));

startaddressoffield=Convert.

ToInt32(InfOfFields[i]tring(7,5));

fields[indexoffields++]=

getMychars(DataArea,lengthoffield,startaddressoffield);

}

}return fields;

}

}

5结语

本文所设计的图书馆特色数据库建设发布系统界面简洁,系统功能结构清晰,实现了本馆藏特色图书、期刊、报纸等资源的数字化管理和发布。按照系统所设计的工作流程,可以方便轻松地建设本馆特色数字资源库,对数字资源进行进一步的充实和完善。系统的成功开发,有助于提升图书馆自动化管理水平和资源服务水平,提高工作人员的工作效率。

参考文献

[1]范振钧.基于的三层结构实现方法研究[J].计算机科学,2007,34(4):289-290.

[2]Bill Evjen,Jay Glynn.C#高级编程(第四版)[M].李敏波译,北京:清华大学出版社,2006.