软件工程课程设计图书管理系统的设计和实现_第1页
软件工程课程设计图书管理系统的设计和实现_第2页
软件工程课程设计图书管理系统的设计和实现_第3页
软件工程课程设计图书管理系统的设计和实现_第4页
软件工程课程设计图书管理系统的设计和实现_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 软件工程课程设计 目 录1 引言.1 1.1 背景.1 1.2 目标.12 需求分析.1 2.1 系统需求.1 2.2 功能需求.2 2.3 业务流程图.23 总体设计.2 3.1 基本设计概念和处理流程.2 3.2 系统层次模块图.3 3.2 模块设计.34 数据库设计.4 4.1 数据库的逻辑设计.4 4.2 数据库配置.65 详细设计.8 5.1 系统公共文件.8 5.2 用户登录模块的设计与实现.8 5.3 主页面模块的设计与实现.10 5.4 留言板模块的设计与实现.12 5.5 分类浏览模块的设计与实现.16 5.6 添加书签模块的设计与实现.18 5.7 我的书签模块的设计与实

2、现.19 5.8 数目搜索模块的设计与实现.206 参考文献.22图书管理系统的设计和实现1 引言1.1 背景当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。图书管理系统(电子阅览室)主要提供网上的电子图书阅览平台,读者可以通过该系统阅览丰富的电子资源。在图书管理系统中,读者可以方便地对书目进行检索和阅览,足不出户便可尽览群书。图书管理系统主要提供网上的图书阅览平台。电子阅览

3、室可提供24小时的在线服务,最大限度的利用了当前互联网的各种优势,使得您无论身在何处,只要能接入互联网就可以享受到它所提供的方便,快捷的服务。它既具有传统图书馆的大部分功能,像图书的查阅及阅览,又新增了基于现有网络技术的许多实用的功能,像用户注册,书签,书评等。它充分的利用了互联网资源,使商家和用户都能从中获得益处。1.2 目标1对图书资源进行分类,发布到网上,以供读者阅读。2为读者提供图书检索功能;3读者能方便地阅览电子图书;4. 读者能方便地建立书签;5. 读者能对书目进行评论;6. 对读者的用户名、密码及权限进行管理。2 需求分析2.1 系统需求随着互联网的爆炸性发展,人们越来越习惯于利

4、用网络来实现所需的服务,网络已深深影响到人们生活的各个方面。另外,传统的图书馆不能满足一部分现代人的需要,而电子阅览室,由于其不受时间与空间的限制同时又具有传统图书馆的大部分功能,能够满足各类用户的常规与特殊需求,而且其方便快捷,实现技术又比较成熟,因此受到当代人的喜爱。该系统主要分为两部分:读者部分和管理部分。为了方便读者查找自己感兴趣的主题进行阅读,要将图书按照内容进行分类。读者可以按照类别进行查找,逐级浏览。如果读者明确知道某本书的书名、作者等相关信息,图书搜索功能就很有用处了。有的读者会经常访问某些书目,或者是读者对某本书没有看完准备以后继续完成阅读,这时读者就要把以后还需要阅读的书目

5、做上书签,以后便能方便的进行阅读了。他人对书的评价能够帮助我们选择阅读的对象。本系统的书评功能为读者提供发表意见的平台,以得到读者对书的评价和反馈。以上是个各为读者服务的功能。除此之外,本系统还可对用户的账号和书目的阅读权限进行管理。管理员需要给用户分配用户名和密码,及设定用户的级别。同时,还需要给图书资源也分级,以确定哪些级别的用户可以阅读。 2.2 功能需求图书管理系统主要提供网上的电子图书阅览平台,读者可以通过该系统阅读丰富的电子图书资源。对于本系统,我们需要实现以下一些基本功能:1 图书分类浏览:为了方便读者查找书目,将书目按照内容进行分类。这样读者就能很方便的找到自己感兴趣的主题进行

6、阅读。2 图书搜索:设定多种搜索条件,按条件搜索符合读者要求的图书。如果读者知道某本书的书名、作者等相关信息,利用图书搜索功能就很方便了。3 书签功能:定义书签,方便读者中断后继续阅读。部分读者可能会定期的访问某些书目;又或者有的读者阅读某本书的时候没有看完,打算以后继续完成阅读,在这样的情况下,书签功能就会给读者带来很大的便利。4 书评功能:读者可提交对书的评价。书评能够帮助读者更好选择阅读对象,了解图书内容,对读者阅读图书有很大的帮助。 5 权限管理:权限管理包括两部分内容:对用户帐号的管理和对书目阅读权限的管理。管理员需要给用户分配用户名和密码,同时设定用户的级别。同时,管理员还需要给阅

7、读资源也分级,以确定哪些级别的用户可以阅读。2.3 业务流程图 3 总体设计3.1 基本设计概念和处理流程 互联网技术的飞速发展,asp技术的灵活、易用、功能dreamweaver、microsoftfrontpage、vbscript等设计工具的方便实用,以及数据库技术的发展给本系统的设计和实现提供了技术上的支持。本系统在数据库技术方面有如下优点:(1) 开发统一,传统的数据库一般用vb,vc等开发,这些开发工具各有各的标准和方法,不是和开发web数据库应用,web数据库的开发使用统一的html,任何人开发的数据库都有符合这个标准。(2) 平台支持,传统的数据库应用一般要针对每一个操作系统开

8、发一个专用版本,为不同的硬件平台开发不同的版本。web数据库只需要开发一个版本就可以在所有的操作系统和硬件平台上使用。只要这个平台具有符合html标准的浏览器。系统基本的流程是:用户登陆主界面选择各项子系统。3.2 系统层次模块图“图书管理信息系统”主要分为图书浏览和后台管理两个子系统,其功能模块划分如下图1所示:图书分类浏览图书搜索图书浏览书签图书信息管理系统留言板在线投票管理功能密码管理图1 “图书信息管理系统”系统主模块功能图3.3 模块设计1. 用户登录模块:填写已分配的用户名称,填写正确的密码,进入主控制页面。2. 图书浏览模块:图书分类,按类型逐级显示。3. 图书搜索模块:提供多种

9、查询条件,可按需要进行查询。4. 书签管理模块:可以进行查看、添加、删除书签的操作。5. 留言板管理模块:显示书评列表和一条书评内容,添加书评。6. 在线投票模块:为喜爱的图书投票,显示投票结果,选出认为最值得一看的图书。6. 权限管理模块:分配用户名和密码,设定用户的级别。同时,还要给图书资源进行分级,以确定哪些级别的用户可以阅读。4 数据库设计4.1数据库的逻辑设计由于本电子商务系统没有海量数据的存储问题,其数据一般不是很多,所以没有必要选用像oracle这样的数据库:另外,现今的各种主页空间很少有支持oracle的,而支持access的较多。另外现阶段尚处于演示阶段,对安全性要求不是很高

10、,access足可以胜任,所以我们选用了microsoft access 2000。数据通信接口采用odbc(open database connectivity,开放数据库互连)。odbc是微软开发的一套读取数据库的解决方案,它的目的是将所有对数据库的底层操作全部隐藏在odbc的驱动程序内核里。对于程序员来说,只要构建了一个指向数据库的连接,就可以采用统一的应用程序编程接口(application program interface)实现对数据库的读写。目前odbc驱动已经提供了对大多数常见类型数据库的支持,包括dbase,informix,access,sql server和oracle等

11、。也包括了对其它类型的数据库的支持,如文本,excel电子表格等的支持。根据系统功能设计的要求以及功能模块的划分,对于系统信息数据库,可以列出以下数据项和数据结构:1 名称:用户信息表表名称标识:user如下图3所示,用户信息表包括标识、用户名、用户密码、用户类型四个字段。名称字段名称数据类型主键非空用户名name文本noyes用户密码passwd文本nono用户级别type数字nono表3 用户信息表2名称:书目信息表表名称标识:bookdetail如下图4所示,书目信息表包括书目编号、书目名称、作者、阅读次数、书目分类、目录地址和书目权限级别七个字段。名称字段名称数据类型主健非空书目编号b

12、ookid数字nono书目名称name文本nono作 者author文本nono阅读次数times数字nono书目分类type数字nono目录地址dir文本nono书目权限级别identify_num数字nono表4 书目信息表3 名称:书目类别表表名称标识:bookwarelist 如下图5所示,书目类别表包括编号、类别名称、类别编号、上级类别名称、上级类别编号、上级类别标识。名称字段名称数据类型主健非空编号(唯一性标识)id数字yesno类别名称title文本nono类别编号type_id数字nono上级类别名称parent文本nono上级类别编号parent_type数字nono上级类别

13、标识parent_id数字nono表5 书目类别信息表4 名称:书评信息表表名称标识:bookcomment如下图6所示,书评信息表包括评论编号、评论者名称、评论书目编号、评论标题、书目标题、评论者表情图标、评论时间和评论内容八个字段。名称字段名称数据类型主健非空评论编号commentid自动编号yesno评论者名称 username文本nono评论标题 title文本nono书目标题booktitle文本nono评论者表情图标imgname文本nono评论时间settime日期/时间nono评论内容detail备注nono表6 书评信息表5 名称:书签信息表表名称标识:bookmark如下图

14、7所示,书签信息表包括书签编号、用户名称、书目编号、书签说明、书签图标和书签设置时间六个字段。名称字段名称数据类型主健非空 书签编号markid自动编号yesno用户名称 username 文本nono 书目编号 bookid 数字nono 书签说明 detail 文本nono 书签图标imgname 文本nono书签设置时间settime日期/时间nono表7 书签信息表6 名称:推荐书目表表名称标识:introduce如下图8所示,推荐书目表包括推荐书目编号、书目编号和推荐详细信息三个字段。名称字段名称数据类型主健非空推荐书目编号id数字yesno书目编号 bookid 数字nono推荐详

15、细信息 description 文本nono表8 推荐书目信息表7 名称:新书信息表表名称标识:newbook如下图9所示,新书信息表包括条目编号、新书的书目编号和新书的评论内容三个字段。名称字段名称数据类型主健非空条目编号id数字yesno新书的书目编号 bookid 数字nono新书的评论内容 description 文本nono表9 新书信息表8 名称:访问次数表表名称标识:visit如下图10所示,访问次数表只包括记录访问次数一个字段。名称字段名称数据类型主健非空记录访问次数visitnum数字nono表10 访问次数信息表4.2数据库的配置一个真正的、完整的站点是离不开数据库的。od

16、bc为应用程序提供了一种标准方法来操作相关的数据库:管理器根据数据源提供的数据库的位置、数据库类型及odbc驱动程序等信息,建立起odbc与具体数据库的联系。这样,只要应用程序将数据源名提供给odbc,odbc就能建立起与相应数据库的连接。按如下步骤可以建立一个新的系统数据源。首先,在控制面板中双击odbc图标,打开“odbc数据源管理器”对话框,选择“系统dsn”选项卡,单击“添加”按钮。如下图12所示。在“创建新数据源”对话框中,选择“driver do microsoft access(*.mdb)”作为数据库驱动程序并单击“完成”按钮。如下图13所示。在“odbc microsoft

17、access安装”对话框中,数据源名称填写为“library”,这是程序中将要引用的。单击“选择”按钮,从弹出的文件窗口中选择library.mdb文件所在的位置。如下图14所示。然后单击“确定”按钮,这样就完成了access数据库的odbc数据源设置。以上步骤,通过odbc管理器注册了一个名字为library的数据源,并且指定了数据库的驱动程序。5 详细设计整个系统除了用户登录外,主要有主页面模块、留言板模块、图书浏览管理模块、图书搜索管理模块、书签管理模块和在线投票管理模块六个模块。通过本系统,读者可以方便的对书目进行检索和阅览,足不出户就可尽览群书。5.1 系统公共文件global.as

18、aglobal.asa文件可以对application和session对象的开始和结束事件定义函数。application_onstart事件在创建与服务器的首次会话之前发生。当服务器启动并且允许用户请求时就触发该事件。当application_onstart事件发生后程序就自动调用sub和end sub定义的过程。在该文件中,数据库连接字符串存放在application(“dsn”)对象中。每次网站启动,数据库连接字符串application(“dsn”)就被赋值。global.asa如果想在服务器端运行该程序,则要加上runat=server属性。sub application_onsta

19、rtapplication(dsn) = dsn=library;uid=;pwd=;end sub5.2 用户登录模块的设计与实现1. 登录模块的ipo图功能:本模块主要用于对用户身份进行鉴别。用户通过表单提供用户名和密码信息,系统根据用户提供的登录信息对用户进行身份查询鉴别。如果身份合法,则将用户导向系统的主页面并记录用户的相关信息,留待以后的系统页面使用。输入:用户名、密码处理:(1) 输入用户的登录信息。在页面提供的表单出输入用户的用户名和密码信息,点击“登录”按钮提交表单信息到身份验证页面。或点击“重填”按钮,重新输入。(2) 从form表单获取输入数据。 当用户单击“登录”按钮后,

20、登录信息由form表单提交到logon.asp进行处理。(3) 用户身份进行验证。连接数据库,打开用户数据表usertype,检验用户登录信息。以输入数据“用户名”为查询条件创建数据集查看输入用户名是否存在。如果存在,继续检验输入的密码是否正确。密码和用户名都正确,则进入图书馆主页面frame.asp;如果用户名不存在或密码不正确,则给出登录失败的提示框,并返回首页重新登录。输出:图书馆主页面2图书馆登录页面图如下图所示:图15 图书馆登录页面页面图图16 登录不成功页面页面图 3模块所使用的数据表本页面使用了library.mdb数据库中的用户信息表(usertype)。5.3 主页面模块的

21、设计与实现本系统的主页面使用了框架结构。使用框架(frames)结构设计的html文件,能够将整个窗口分成几个独立的小窗口,每个窗口可以分别载入不同的文件。框架的主要优点是独立显示内容,能直观的分开内容。可以在一个框架中定义链接,在另一个框架中显示内容或触发操作,而不必从重设计整个屏幕。主页面页面图如下图17所示:图17 主页面页面图框架不能单独存在,而要用框架组来定义。框架组用标签定义,框架用标签定义。主页面frame.asp的asp代码如下:new page 1窗口分割为几块,横向分用rows属性,纵向分用cols属性,每一块的大小可以由这两个属性的值来实现。两个属性的值可以是百分数或整数

22、,其中的任何一个值也可以由“*”来代替,这样表示有浏览器自动设置其大小。 在边框显示时,如果不希望用户在浏览器中对边框大小进行调整,设置的noresize属性来实现。 有框架分出来的几个窗口的内容并不是静止不变的,往往一个窗口的内容随着另一个窗口的要求而不断变化,这就提高了框架的利用价值。为了完成几个窗口之间的相互操作,我们必须为每一个窗口起一个名字,这个名字用属性name来定义。定义了窗口名称,还应该由target来配合使用。target属性指定了所链接的文件出现在哪一窗口。target的值可以是name定义的名称,也可以是以下四类值:(1) target=_blank 显示一个新窗口(2)

23、 target=_self 显示在本窗口(3) target=_parent 显示在frameset的前一份文件的窗口(4) target=_top 显示在整个浏览器窗口 此网页使用了框架,但您的浏览器不支持框架。 使用标记,将另一无框架的html文件放入,则不支持框架的浏览器将阅读到这个文件。从以上代码可以看出,整个页面分为2个frame。顶部为菜单页面top.asp,下面是显示页面main.asp。在系统运行过程中,顶部菜单页面一直都是显示状态,方便用户在不同的功能模块之间切换;显示页面则根据顶部菜单显示不同的阅读内容。l 顶部菜单模块的设计1. 顶部菜单模块的ipo图功能:顶部菜单模块包

24、括各项功能的链接:书库首页、浏览板、图书的分类浏览、更改用户密码、添加书签、查看用户的书签、书目的搜索、在线投票和退出系统。用户可通过以上各超链接文本进入到相应的各功能模块中。输入:点击相应功能的超链接文本处理:(1) 构造页面格式。使用html语言的table表格标签构造页面表单,将各个超链接文本分布在页面的相应位置。(2) 超链接文本。点击相应的超链接文本,或提交到本页的javascript脚本执行或链接到相应的页面。输出:用户要求的页面l 主页模块的设计1. 主页模块的ipo图功能:主页面中显示推荐书目和新书书目的书目、作者、访问次数和简单介绍等相关信息。通过书名超链接文本,就可以阅读到

25、图书内容。输入:点击书名的超链接文本处理:(1) 构造页面格式。使用html语言的table表格标签构造页面表单,构造放置各个字段及字段值的表单,美化页面。(2) 连接数据库。与数据库创建链接,使用sql语言在数据库中选取符合条件的记录。在符合条件的记录中选取相关字段值组成记录集。显示在页面的相应位置中。(3) 创建超链接文本。将书名设置为超链接文本。用户点击想要阅读的图书的书名,程序就会将页面导向readbook.asp页面。在readbook.asp页面中,用户就可以看到图书的详细内容。输出:用户要求的页面2模块所使用的数据表本页面使用了library.mdb数据库中的推荐书目信息表(in

26、troduce)、新书信息表(newbook)、使用sql语言在数据库中选取新书书目表newbook中的条目编号id、新书信息description字段及书目信息表bookdetail中的书目编号bookid、书目名称name、作者author和阅读次数times共六个字段值组成记录集。在记录集中选取符合新书书目表中的新书书目编号bookid字段值与书目信息表中的书目编号bookid的字段值相同的记录,创建记录集rs。 5.4 留言板模块的设计与实现留言板模块可以分成三个子模块:查看留言、留言浏览和增加留言。如下图18所示。查看留言模块留言板模块留言浏览模块增加留言模块图18 留言板模块划分图

27、l 查看留言模块1查看留言模块的ipo图功能:留言查看页面如图7-19所示,用户进入此页面后,所有的留言信息将以分页形式显示出来,用户可以看到留言者的表情图标、发表留言针对的书目的书名、留言主题和留言时间等信息。将留言主题字段的字段值设置为超链接文本,点击留言主题,就可以进一步查询到该留言信息的具体内容。输入:点击留言主题的超链接文本处理:(1) 构造页面格式。使用html语言的table表格标签构造页面表单,构造放置各个字段及字段值的表单,美化页面。(2) 连接数据库。与数据库创建链接,使用sql语言在数据库中选取符合条件的记录。在符合条件的记录中选取相关字段值组成记录集。显示在页面的相应位

28、置中。(3) 分页显示记录以fornext循环语句依次读取数据集rs中的记录。为方便浏览,将记录分页显示。每十五个记录为一页,以“前一页”和“下一页”超链接端点实现页面间的跳转。(4) 创建超链接文本。将留言主题字段设置为超链接文本。用户点击想要查看详细内容的留言的留言主题字段,程序就会将页面导向guest_list.asp页面。在guest_list.asp页面中,用户就可以看到该条留言的详细内容。(5) 其他超链接 本页面还可以链接到增加新留言页面;也可以链接到主页面。2. 留言查看页面图如图19所示图19 留言查看页面图3模块所使用的数据表本页面使用了library.mdb数据库中的书评

29、信息表(bookcomment)。点击留言主题,就可以进入guest_list.asp页面查看留言的详细信息。l 留言详细内容浏览模块1. 留言详细内容浏览模块ipo图功能:点击留言主题字段的字段值,将连接到guest_list.asp页面。在该页面中,将能详细地看到该条记录的信息。按下“返回”就可回到留言板的index.asp页面。输入:点击留言查看页面中的留言主题字段超链接文本处理:(1) 创建记录集。使用asp中的odbc驱动程序连接数据库library.mdb,打开书评信息数据表bookcomment,以用户要求查询记录的id为查询条件,创建数据集rs。(2) 构造页面格式。使用htm

30、l语言的table表格标签构造页面表单,将超链接文本分布在页面的相应位置。输出:留言详细内容浏览页面2 留言详细内容浏览页面图如图20所示图20 留言详细内容浏览页面图3页面所使用的数据库本页面使用了library数据库中的书评信息数据表bookcomment。l 增加留言模块1. 增加留言模块的ipo图功能:在各种表格和表单构成的guest_input.asp页面中的适当位置输入用户所作评论的图书的书名、用户选择的表情图标、评论的主题和留言的详细内容等信息后,提交到add_cmaction.asp页面进行处理。输入:新增加的留言信息的用户所作评论的图书的书名、用户选择的表情图标、评论的主题和

31、留言的详细内容。处理:(1) 构造页面格式。应用表格进行页面布局,相应的字段名称后使用单文本框、多行文本框或单选框表单组件,构成留言信息输入页面。(2) 输入留言信息。在各单文本框、多行文本框或单选框表单组件中输入新增信息的各项内容。输入信息后按下“增加”按钮就将信息交由form表单提交到add_cmaction.asp页面进行处理。(3) 将增加的各字段信息保存到数据库中。输出:增加成功对话框。2 留言增加页面图如图21所示:图21 留言增加页面图图22 留言加入成功页面图3模块所使用的数据表本页面使用了library.mdb数据库中的书评信息表bookcomment。5.5 分类浏览模块的

32、设计与实现1分类浏览模块的ipo图功能:点击分类浏览超链接文本后,进入浏览页面。在本模块中,图书按其分类逐级显示,用户可以按照图书的分类方便的逐级查找图书。找到指定的图书后,用户可以阅读,也可以做书签,查看和发表书评信息,还可以到投票界面去投票。输入:点击分类浏览的超链接文本.处理:(1) 构造页面格式。使用html语言的table表格标签构造页面表单,构造放置各个字段及字段值的表单,美化页面。(2) 连接数据库。与数据库创建链接,使用sql语言在数据库中选取符合条件的记录。在符合条件的记录中选取相关字段值组成记录集。显示在页面的相应位置中。(3) 显示类别信息。页面按照图书的类别逐级进行排列

33、,并设置超链接文本,读者可以方便的单击连接来进行访问。记录以分页的形式显示。(4) 阅读图书。逐级查找要阅读的书目。找到后,单击书目超链接,页面导向readbook.asp页面进行阅读。(6) 其他超链接 本页面还可以链接到增加新书签页面;也可以链接到查看和增加书评的留言板页面;还可以链接到在线投票页面。2. 分类浏览页面图如下图所示图27 图书阅读页面3模块所使用的数据表本页面使用了library.mdb数据库中的书目类别表bookwarelist。5.6添加书签模块的设计与实现1. 添加书签模块的ipo图功能:在各种表格和表单构成的add_bookmark.asp页面中的适当位置输入用户选

34、择的书签图标、书签的详细内容等信息后,提交到add_action.asp页面进行将一条新记录插入数据表的操作。输入:新增加的书签信息的用户选择的表情图标和书签的详细内容。处理:(1) 构造页面格式。应用表格进行页面布局,相应的字段名称后使用多行文本框或单选框表单组件,构成书签信息输入页面。(2) 判断合法性。在连接数据库之前,首先判断用户是否在阅读某一本书。然后判断要添加书签的书目是否存在。(3) 连接数据库。以上一页提交的图书的编号为条件选取数据表中的记录创建记录集,将记录中的用户名、书名和作者等信息显示在相应位置。(4) 输入书签。在相应表单元素中选取书签标图,输入书签的详细内容。提交到add_action.asp页面进行处理。(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论