图书管理系统11108122.docx

上传人:b****5 文档编号:30012899 上传时间:2023-08-04 格式:DOCX 页数:27 大小:1.06MB
下载 相关 举报
图书管理系统11108122.docx_第1页
第1页 / 共27页
图书管理系统11108122.docx_第2页
第2页 / 共27页
图书管理系统11108122.docx_第3页
第3页 / 共27页
图书管理系统11108122.docx_第4页
第4页 / 共27页
图书管理系统11108122.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

图书管理系统11108122.docx

《图书管理系统11108122.docx》由会员分享,可在线阅读,更多相关《图书管理系统11108122.docx(27页珍藏版)》请在冰豆网上搜索。

图书管理系统11108122.docx

图书管理系统11108122

 

《课程实习报告》

 

学号:

20081004110

班级序号:

11108122

姓名:

邹洋

指导老师:

杨之江

中国地质大学信息工程学院软件工程系

目录

一、引言4

二、需求分析5

2.1系统需求5

三、总体设计7

3.1基本设计概念和处理流程7

3.2模块设计7

四、数据库设计9

4.1数据库的逻辑设计9

4.2数据库的配置11

五、详细设计18

5.1用户登录模块的设计与实现18

5.2主页面模块的设计与实现19

5.3更改密码模块的设计与实现20

5.4添加书签模块的设计与实现21

5.5图书搜索模块的设计与实现22

六、代码24

总结31

图书管理系统的设计和实现

1.1背景

当今时代是飞速发展的信息时代。

在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。

计算机的最大好处在于利用它能够进行信息管理。

使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。

尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。

图书管理系统(电子阅览室)主要提供网上的电子图书阅览平台,读者可以通过该系统阅览丰富的电子资源。

在图书管理系统中,读者可以方便地对书目进行检索和阅览,足不出户便可尽览群书。

图书管理系统主要提供网上的图书阅览平台。

电子阅览室可提供24小时的在线服务,最大限度的利用了当前互联网的各种优势,使得您无论身在何处,只要能接入互联网就可以享受到它所提供的方便,快捷的服务。

它既具有传统图书馆的大部分功能,像图书的查阅及阅览,又新增了基于现有网络技术的许多实用的功能,像用户注册,书签,书评等。

它充分的利用了互联网资源,使商家和用户都能从中获得益处。

1.2目标

1.对图书资源进行分类,发布到网上,以供读者阅读。

2.为读者提供图书检索功能;

3.读者能方便地阅览电子图书;

4.读者能方便地建立书签;

5.读者能对书目进行评论;

6.对读者的用户名、密码及权限进行管理。

二、需求分析

2.1系统需求

随着互联网的爆炸性发展,人们越来越习惯于利用网络来实现所需的服务,网络已深深影响到人们生活的各个方面。

另外,传统的图书馆不能满足一部分现代人的需要,而电子阅览室,由于其不受时间与空间的限制同时又具有传统图书馆的大部分功能,能够满足各类用户的常规与特殊需求,而且其方便快捷,实现技术又比较成熟,因此受到当代人的喜爱。

该系统主要分为两部分:

读者部分和管理部分。

为了方便读者查找自己感兴趣的主题进行阅读,要将图书按照内容进行分类。

读者可以按照类别进行查找,逐级浏览。

如果读者明确知道某本书的书名、作者等相关信息,图书搜索功能就很有用处了。

有的读者会经常访问某些书目,或者是读者对某本书没有看完准备以后继续完成阅读,这时读者就要把以后还需要阅读的书目做上书签,以后便能方便的进行阅读了。

他人对书的评价能够帮助我们选择阅读的对象。

本系统的书评功能为读者提供发表意见的平台,以得到读者对书的评价和反馈。

以上是个各为读者服务的功能。

除此之外,本系统还可对用户的账号和书目的阅读权限进行管理。

管理员需要给用户分配用户名和密码,及设定用户的级别。

同时,还需要给图书资源也分级,以确定哪些级别的用户可以阅读。

 

2.2功能需求

图书管理系统主要提供网上的电子图书阅览平台,读者可以通过该系统阅读丰富的电子图书资源。

对于本系统,我们需要实现以下一些基本功能:

1图书分类浏览:

为了方便读者查找书目,将书目按照内容进行分类。

这样读者就能很方便的找到自己感兴趣的主题进行阅读。

2图书搜索:

设定多种搜索条件,按条件搜索符合读者要求的图书。

如果读者知道某本书的书名、作者等相关信息,利用图书搜索功能就很方便了。

3书签功能:

定义书签,方便读者中断后继续阅读。

部分读者可能会定期的访问某些书目;又或者有的读者阅读某本书的时候没有看完,打算以后继续完成阅读,在这样的情况下,书签功能就会给读者带来很大的便利。

4书评功能:

读者可提交对书的评价。

书评能够帮助读者更好选择阅读对象,了解图书内容,对读者阅读图书有很大的帮助。

5权限管理:

权限管理包括两部分内容:

对用户帐号的管理和对书目阅读权限的管理。

管理员需要给用户分配用户名和密码,同时设定用户的级别。

同时,管理员还需要给阅读资源也分级,以确定哪些级别的用户可以阅读。

 

三、总体设计

3.1基本设计概念和处理流程

互联网技术的飞速发展,ASP技术的灵活、易用、功能Dreamweaver、microsoftFrontpage、VBScript等设计工具的方便实用,以及数据库技术的发展给本系统的设计和实现提供了技术上的支持。

本系统在数据库技术方面有如下优点:

开发统一,传统的数据库一般用VB,VC等开发,这些开发工具各有各的标准和方法,不是和开发WEB数据库应用,Web数据库的开发使用统一的HTML,任何人开发的数据库都有符合这个标准。

 

图1“图书信息管理系统”系统主模块功能图

3.2模块设计

1.用户登录模块:

填写已分配的用户名称,填写正确的密码,进入主控制页面。

2.图书查询模块:

图书分类,按类型逐级显示。

3.图书搜索模块:

提供多种查询条件,可按需要进行查询。

4.管理员模块:

显示书评列表和一条书评内容,添加书评。

5.图书入库模块:

为喜爱的图书投票,显示投票结果,选出认为最值得一看的图书。

6.权限管理模块:

分配用户名和密码,设定用户的级别。

同时,还要给图书资源进行分级,以确定哪些级别的用户可以阅读。

四、数据库设计

4.1数据库的逻辑设计

由于本电子商务系统没有海量数据的存储问题,其数据一般不是很多,所以没有必要选用像Oracle这样的数据库:

另外,现今的各种主页空间很少有支持Oracle的,而支持Access的较多。

另外现阶段尚处于演示阶段,对安全性要求不是很高,Access足可以胜任,所以我们选用了MicrosoftAccess2000。

数据通信接口采用ODBC(OpenDatabaseConnectivity,开放数据库互连)。

ODBC是微软开发的一套读取数据库的解决方案,它的目的是将所有对数据库的底层操作全部隐藏在ODBC的驱动程序内核里。

对于程序员来说,只要构建了一个指向数据库的连接,就可以采用统一的应用程序编程接口(ApplicationProgramInterface)实现对数据库的读写。

目前ODBC驱动已经提供了对大多数常见类型数据库的支持,包括dBase,Informix,Access,SQLServer和Oracle等。

也包括了对其它类型的数据库的支持,如文本,Excel电子表格等的支持。

根据系统功能设计的要求以及功能模块的划分,对于系统信息数据库,可以列出以下数据项和数据结构:

1.名称:

用户信息表

表名称标识:

UserInfo

2.名称:

书目信息表

表名称标识:

BookCategoryInfo

3.名称:

书目类别表

表名称标识:

BookInfo

4.名称:

书评信息表

表名称标识:

OrderInfo

5.名称:

书签信息表

表名称标识:

StuInfo

6.名称:

书目表

5.名称:

访问次数表

4.2数据库的配置

一个真正的、完整的站点是离不开数据库的。

ODBC为应用程序提供了一种标准方法来操作相关的数据库:

管理器根据数据源提供的数据库的位置、数据库类型及ODBC驱动程序等信息,建立起ODBC与具体数据库的联系。

这样,只要应用程序将数据源名提供给ODBC,ODBC就能建立起与相应数据库的连接。

按如下步骤可以建立一个新的系统数据源。

首先,运行项目,输入用户ID和密码,单击“登录”按钮。

如下图12所示。

<图12>

出现“图书管理系统”对话框中。

如下图13所示。

<图13>

在“图书管理系统”对话框中,单击“系统”—>“退出”按钮,即可退出。

单击“查询”—>“图书查询”如下图14所示。

<图14>

在“图书查询”对话框中,可按查询条件查询,如下图15所示。

<图15>

在“图书查询”对话框中,可按查询条件,输入“西游记”即可查询,如下图16所示。

<图16>

 

在“图书管理系统”对话框中,单击“图书”—>“图书借阅”如下图17所示。

<图17>

在“图书管理系统”对话框中,单击“查询”—>“图书归还”如下图18所示。

<图18>

在“图书管理系统”对话框中,单击“查询”—>“新书入库”如下图19所示。

<图19>

在“图书管理系统”对话框中,单击“管理”—>“查看管理员”如下图20所示。

<图20>

在“图书管理系统”对话框中,单击“管理”—>“添加管理员”如下图21所示。

<图21>

在“图书管理系统”对话框中,单击“管理”—>“查看管理员”如下图20所示。

五、详细设计

整个系统除了用户登录外,主要有用户登录模块、图书查询模块、图书搜索模块、管理员模块、图书入库模块和权限管理模块六个模块。

通过本系统,读者可以方便的对书目进行检索和阅览,足不出户就可尽览群书。

5.1用户登录模块的设计与实现

1.登录模块的IPO图

功能:

本模块主要用于对用户身份进行鉴别。

用户通过表单提供用户名和密码信息,系统根据用户提供的登录信息对用户进行身份查询鉴别。

如果身份合法,则将用户导向系统的主页面并记录用户的相关信息,留待以后的系统页面使用。

输入:

用户名、密码

处理:

(1)输入用户的登录信息。

在页面提供的表单出输入用户的用户名和密码信息,点击“登录”按钮提交表单信息到身份验证页面。

或点击“重填”按钮,重新输入。

(2)从form表单获取输入数据。

当用户单击“登录”按钮后,登录信息由form表单提交到logon.asp进行处理。

(3)用户身份进行验证。

连接数据库,打开用户数据表usertype,检验用户登录信息。

以输入数据“用户名”为查询条件创建数据集查看输入用户名是否存在。

如果存在,继续检验输入的密码是否正确。

密码和用户名都正确,则进入图书馆主页面frame.asp;如果用户名不存在或密码不正确,则给出登录失败的提示框,并返回首页重新登录。

输出:

图书馆主页面

2.图书馆登录页面图如下图所示:

图15图书管理系统登录页面图

5.2主页面模块的设计与实现

本系统的主页面使用了框架结构。

使用框架(frames)结构设计的HTML文件,能够将整个窗口分成几个独立的小窗口,每个窗口可以分别载入不同的文件。

框架的主要优点是独立显示内容,能直观的分开内容。

可以在一个框架中定义链接,在另一个框架中显示内容或触发操作,而不必从重设计整个屏幕。

主页模块的设计

1.主页模块

功能:

主页面中显示推荐书目和新书书目的书目、作者、访问次数和简单介绍等相关信息。

通过书名超链接文本,就可以阅读到图书内容。

输入:

点击书名的超链接文本

处理:

(1)构造页面格式。

使用HTML语言的TABLE表格标签构造页面表单,构造放置各个字段及字段值的表单,美化页面。

(2)连接数据库。

与数据库创建链接,使用SQL语言在数据库中选取符合条件的记录。

在符合条件的记录中选取相关字段值组成记录集。

显示在页面的相应位置中。

(3)创建超链接文本。

将书名设置为超链接文本。

用户点击想要阅读的图书的书名,程序就会将页面导向readbook.asp页面。

在readbook.asp页面中,用户就可以看到图书的详细内容。

输出:

用户要求的页面

2.模块所使用的数据表

使用SQL语言在数据库中选取新书书目表newbook中的条目编号id、新书信息description字段及书目信息表bookdetail中的书目编号bookid、书目名称name、作者author和阅读次数times共六个字段值组成记录集。

在记录集中选取符合新书书目表中的新书书目编号bookid字段值与书目信息表中的书目编号bookid的字段值相同的记录,创建记录集RS。

5.3更改密码模块的设计与实现

1.更改密码模块的IPO图

功能:

留言查看页面如图7-23所示,在主页面的上部分中的top.asp页面中,点击“更改密码”,就会调用javascript脚本语言,生成一个窗口。

用户在生成的窗口中输入新的密码,提交后程序会将数据表中的密码进行修改。

输入:

点击更改密码的超链接文本。

(1)构造页面格式。

使用HTML语言的TABLE表格标签构造页面表单,构造放置各个字段及字段值的表单,美化页面。

(2)判断合法性。

对session对象中的用户名字段值进行判断,判断用户的登录是否合法。

如果不合法,显示要求重新登录的提示语,重新登录。

(3)输入新密码。

在页面的相应位置填入用户的旧密码、新密码,在重新输入一次新密码,以确保输入无误。

然后提交到pass_action.asp页面进行处理。

5.4添加书签模块的设计与实现

1.添加书签模块的IPO图

功能:

在各种表格和表单构成的add_bookmark.asp页面中的适当位置输入用户选择的书签图标、书签的详细内容等信息后,提交到add_action.asp页面进行将一条新记录插入数据表的操作。

输入:

新增加的书签信息的用户选择的表情图标和书签的详细内容。

处理:

(1)构造页面格式。

应用表格进行页面布局,相应的字段名称后使用多行文本框或单选框表单组件,构成书签信息输入页面。

(2)判断合法性。

在连接数据库之前,首先判断用户是否在阅读某一本书。

然后判断要添加书签的书目是否存在。

(3)连接数据库。

以上一页提交的图书的编号为条件选取数据表中的记录创建记录集,将记录中的用户名、书名和作者等信息显示在相应位置。

(4)输入书签。

在相应表单元素中选取书签标图,输入书签的详细内容。

提交到add_action.asp页面进行处理。

(5)插入操作。

获取相关信息,在add_action.asp页面中打开数据库,使用recordset对象的insertinto方法向书签信息表bookmark插入一条新记录。

5.5图书搜索模块的设计与实现

1.书目搜索模块的IPO图

功能:

搜索方式分为3种:

通过书名、作者和十大热门来进行查询。

查出的结果显示在名字为searchresult的窗口中。

用户可通过以上各查询方式,方便的查询自己想要阅读的书目。

输入:

选择一种查询方式,输入查询条件。

处理:

(1)构造页面格式。

使用HTML语言的TABLE表格标签构造页面表单。

本模块使用了框架结构。

单行文本框和单选框来确定查询条件。

(2)查询条件。

在三种查询方式中选择一种作为读者的查询方式。

然后在单行文本框中输入查询条件。

(3)查询结果。

连接数据库,在相应的数据表中选取符合查询条件的记录。

将查询结果显示在下面的窗口中

六、代码

6.1登录代码(Login)

namespaceBookInfoM

{

publicpartialclassLogin:

Form

{

publicstaticstring[]LuserID;

privateintLogintimes=0;

publicLogin()

{

InitializeComponent();

}

privatevoidLogin_Load(objectsender,EventArgse)

{

combUserID.Text="";

txtPassWord.Text="";

}

privatevoidbtnLogin_Click(objectsender,EventArgse)

{

if(this.Text.Trim()!

="")

{

if(txtPassWord.Text!

="")

{

SqlCommandcommand=CustomDataProvide.GetCommand(

"select*fromUserInfowhereUserID='"+combUserID.Text.Trim()+

"'andPassword='"+txtPassWord.Text.Trim()+"'");

SqlDataReaderdr;

try

{

command.Connection.Open();

dr=command.ExecuteReader();

dr.Read();

if(dr.HasRows)

{

Logintimes=0;

Mainmain=newMain();

Main.LoginUser.UserID=dr.GetString(0);

Main.LoginUser.UserName=dr.GetString

(1);

Main.LoginUser.Password=dr.GetString

(2);

Main.LoginUser.Isadmin=dr.GetBoolean(3);

Main.LoginUser.Day=(Week)dr.GetInt32(4);

this.Hide();

main.Show();

dr.Close();

command.Connection.Close();

command.Dispose();}

else

{Logintimes++;

if(Logintimes==3)

{MessageBox.Show("对不起,你登录的次数

已经超过三次!

","警告!

");

Application.Exit();

}

if(BookInfoM.ClassCodes.DataValidate.IDExist("select

UserIDfromUserInfowhereUserID='"+combUserID.Text.Trim().ToString()

+"'")==true)

{MessageBox.Show("密码不正确","警告!

");

txtPassWord.Text="";}

else

{MessageBox.Show("此用户ID不存在,请查

证后登录","提示");

combUserID.Text="";

txtPassWord.Text="";

}}}

catch(Exceptionex)

{

MessageBox.Show(ex.Message,"提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Information);

}}

else

{MessageBox.Show("密码不能为空","提示");}}

else

{MessageBox.Show("用户ID不能为空","提示");}}

privatevoidbtnExit_Click(objectsender,EventArgse)

{

if(MessageBox.Show("你确认要退出该程序吗?

",

"提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question)

==DialogResult.Yes)

Application.Exit();

}}}

6.2主界面代码(Main)

namespaceBookInfoM

{

publicpartialclassMain:

Form

{

publicMain()

{

InitializeComponent();

}

privatevoid退出ToolStripMenuItem_Click(objectsender,EventArgse)

{

Application.Exit();}

privatevoid查询管理员ToolStripMenuItem_Click(objectsender,Event

Argse)

{UserManag.ViewAdminview=newBookInfoM.UserManag.

ViewAdmin();

view.Show();}

privatevoid注销ToolStripMenuItem_Click(objectsender,EventArgse)

{

Loginflogin=newLogin();

flogin.Show();

this.Close();}

privatevoid添加管理员ToolStripMenuItem_Click(objectsender,

EventArgse)

{AddAdminaddadmin=newAddAdmin();

addadmin.Show();}

privatevoid修改管理员ToolStripMenuItem_Click(objectsender,

EventArgse)

{ModAdminmodadmin=newModAdmin();

modadmin.Show();}

privatevoid图书查询ToolStripMenuItem_Click(objectsender,

EventArgse)

{SearchBookSeachB=newSearchBook();

SeachB.Show();}

privatevoid图书借阅ToolStripMenuItem_Click(objectsender,

EventArgse)

{LendBookLendB=newLendBook();

LendB.Show();}

privatevoid图书送还ToolStripMenuItem_Click(objectsender,

EventArgse)

{ReturnBookReturnB=newReturnBook();

ReturnB.Show();}

privatevoid删除管理员ToolStripMenuItem_Click(objectsender,

EventArgse)

{ModAdminmodadmin=newModAdmin();

modadmin.Show();

}

privatevoid库存查询ToolStripMenuItem_Click(objectsender,

EventArgse)

{SearchBookSeachB=newSearchBook();

SeachB.Show();}

privatevoid新书入库ToolStripMenuItem_Click(objectsender,

EventArgse)

{BookWarehousingBookW=newBookWarehousing();

BookW.S

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1