毕业设计论文网上图书购买系统的设计Word文件下载.docx
《毕业设计论文网上图书购买系统的设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《毕业设计论文网上图书购买系统的设计Word文件下载.docx(20页珍藏版)》请在冰豆网上搜索。
![毕业设计论文网上图书购买系统的设计Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-12/10/e9542813-6dc8-46d5-ba9e-918679356470/e9542813-6dc8-46d5-ba9e-9186793564701.gif)
inquiryofborrowingandreservinginformation;
bookmanagement
论文总页数:
21页
1引言
1.1选题背景
计算机和网络技术的迅猛发展,人们的生活已逐步实现了信息化,网络化,从而使图书订阅业务受到了强大的冲击。
传统的图书管理和订阅方式已不能适应读者对日益增长的图书信息的需求。
随着馆藏量的不断增加,图书资料的录入和查询的难度也就相应增加,手工方式必将被淘汰,如何运用先进的信息技术,提高图书订阅业务管理和服务水平,是我们面临的一个新的挑战。
1.2国内研究现状
目前,随着信息时代的来临,国内的图书订阅系统已经逐渐从传统的人工处理模式中解放出来,形成了现在的网上图书订阅系统,它以数据库作为信息处理中心,结合先进的Web编程技术,为读者提供了方便、及时、准确的订阅和查询服务。
但现有系统把大部分精力都投入到了功能的实现上,对数据处理的自动化,执行效率和系统稳定性都很少考虑。
如对于预订超期的图书信息,虽然读者可自行取消,管理员也可一一删除,但如果读者忘记取消,管理员也没有删除,就会影响其他用户预订或借阅这些图书,降低了图书资源的利用率。
另外,由于读者需要查询预订信息,导致系统的访问量大大增加,请求的处理速度缓慢,系统稳定性差。
1.3课题研究的意义
根据对图书订阅系统现状的调查与分析,我深刻地认识到人工订阅的传统模式必须被淘汰,取而代之的将是结合了计算机与网络技术的、更加自动化的网上图书订阅系统。
因此,我选择了网上图书订阅系统作为我的研究课题。
这种系统采用B/S结构模式,实现了足不出户订阅读书。
它利用计算机和数据库技术实现动态改变数据库信息,使用户的订阅和查询等服务请求都能在瞬间完成,节省了用户时间,同时方便、准确地更新了数据库,大大减轻了管理员的工作量;
它顺应了当今信息化发展趋势,实现了科学化、信息化、合理化的图书订阅管理。
2理论基础
2.1数据库技术
数据库的诞生和发展给计算机信息管理带来了一场巨大的革命。
数据库管理经历了从手工管理阶段、文件管理阶段到数据库管理阶段的变迁。
随着信息处理的日益发展,信息管理水平的不断提高,计算机管理数据方式的不断改进,数据库技术正逐步渗透到我们日常生活的各个方面。
从书店的图书管理,到关系我们每个人身份的户籍管理,都离不开数据库技术。
MicrosoftSQLServer2000是目前使用最广泛的数据库,它与Windows网络操作系统的无缝集成,智能化的内容管理,强大的功能,使它得到大量用户的喜爱。
与Access相比,它具有更好的应用特征:
✧支持企业级运算,支持C/S模型,提供了更好的性能和更方便的操作。
✧功能增强:
海量的数据存储、数据复制、数据转换服务、分布式事务及全文检索。
✧支持多种协议(TCP/IP、NETBEUI)和分布式计算及分布式计算模型。
2.2面向对象技术
面向对象技术(OOT)是一种软件开发和程序设计技术,C#具有面向对象编程语言的所有特性,它是微软公司专门为.NET量身定做的编程语言,与.NET有着密不可分的联系。
C#的类型就是.NET框架所提供的类型,C#本身并无类库,而是直接使用.NET框架所提供的类库。
另外,类型安全检查、结构化异常处理也都是交给CLR处理的。
因此,C#是最适合开发.NET应用的编程语言。
C#不仅具有C++的强大功能,而且具有VisualBasic简单易用的特性。
具有以下三个典型的特点:
✧默认情况下,C#代码在.NET框架提供的受控环境下运行,不允许直接操作内存。
✧C#具有面向对象编程语言所应有的一切特性,如封装、继承和多态。
在C#中,每种类型都可以看作一个对象。
但C#只允许单继承,从而避免了类型定义的混乱。
✧C#没有全局函数,没有全局变量和常量,所有的都必须封装在一个类中。
因此,用C#编写的代码具有更好的可读性,而且减少了发生命名冲突的可能。
2.3B/S架构的WEB程序设计技术
B/S(Browser/Server)结构即浏览器和服务器结构。
它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。
目前,B/S架构主要使用4种语言:
ASP、ASP.NET、PHP、JSP,其中ASP.NET功能强大,编写容易。
与ASP相比,ASP.NET增加了很多特性,功能也更为强大:
✧使用NET提供的所有类库,可以执行以往ASP所不能实现的许多功能。
✧引入了服务器端控件的概念,这样使开发交互式网站更加方便。
✧引入了ADO.NET数据访问接口,大大提高了数据访问效率。
✧提供ASP.NET的可视化开发环境VisualStudio.NET,进一步提高编程效率。
✧保持对ASP的全面兼容,ASP.NET运行速度快。
✧ASP.NET全面支持面向对象程序设计。
3需求分析
3.1图书订阅系统现状描述
在当今社会不断朝信息化、网络化发展的大背景下,我国很多地方的图书订阅却仍停留在纸介质的基础上,用户的借阅、归还、查询服务都是由管理员进行人工分析处理,工作流程大致如图所示:
图3-1工作流程图
3.2现行系统存在的主要问题分析
图书订阅系统的使用是否方便,运行速度是否迅速,信息处理是否准确,直接影响到人们能否及时获得图书信息,然而,现在系统显然不能人们的需求,它存在的主要问题有:
(1)用户使用很不方便。
用户为了借阅或归还图书,可能会排很长的队,这显然是对时间很大的浪费;
另外,用户还必须记住所借每本书的借阅时间,并要经常提醒自己及时归还,以免超期,而在生活节奏越来越快的今天,人们日常事务已很繁琐,这种事情会很容易被遗忘。
(2)管理图书信息相当困难。
图书的馆藏量越来越大,管理员要对馆藏的图书信息进行人工管理,工作量相当大,如用户借阅时,要查找厚重的记录册,然后对馆藏数量进行修改;
归还时,又要再次修改相应的图书信息。
(3)处理效率低,准确度差。
采用人工方式,不但增加了工作量,浪费了人力,更重要的是不可避免地会降低处理效率,且出错机率大。
3.3提出解决方案
根据对现有图书现状及存在问题的分析,特提出以下解决方案:
(1)利用ASP.NET和C#编程语言,结合SQLServer2000数据库技术。
建立一个网上图书订阅系统。
(2)利用网络技术,通过IIS配置服务器的站点属性,使用户在家就可登录到图书订阅系统,实现网上图书订阅和查询。
(3)采用SQLServer2000数据库技术,将图书信息,用户预订信息,用户借阅信息存储在不同的数据表内,实现信息分类管理,并通过编程技术动态改变数据信息。
(4)通过编程对数据库相关数据表的访问,实现用户对不同信息进行查询。
如:
用户查询其借阅信息,只需访问借阅信息表,找到该用户的借阅信息,然后在用户端的浏览器上显示出来。
所有功能的后台处理对用户都是透明的,用户只需向服务器提出请求,系统就会迅速、及时提供所需信息,大大地方便了用户。
同时,由于采用了计算机和数据库技术,极大减轻了管理员工作量,提高了处理准确度。
4系统设计
4.1系统总体架构
本系统的总体功能结构如图:
图4-1系统模块图
4.2数据库的设计
根据前面功能模块的设计,系统数据库表包括有“用户信息表”,“用户类别表”,“图书信息表”,“图书类别表”,“图书缓存表”,“添加图书表”,“新书表”,“当前借阅信息表”,“预订信息表”,“借阅历史表”,“还书记录表”,“借阅超期表”,“借阅排行表”,“留言信息表”。
表1:
tb_user
功能说明:
存放用户信息,包括一般用户和管理员
表1tb_user
字段名称
字段类型
字段说明
主键
外键
备注
Userid
Varchar(20)
用户账号
是
否
Userpassword
Varchar(50)
用户密码
Username
用户名
Userkind
Char(10)
用户类别
Degree
学历
Major
专业
Class
班级
表2:
tb_userkind
存放用户类别信息
表2tb_userkind
Kindid
类别编号
Kindname
类别名称
表3:
tb_book
存放在馆图书
表3tb_book
Bookid
图书编号
Bookname
图书名称
图书类别
001
Publisher
出版社
Author
作者
Intime
Datetime(8)
入馆时间
Quantity
Int(4)
数量
表4:
tb_bookkind
存放图书类别信息
表4tb_bookkind
表5:
tb_bookcache
暂存从tb_book中被借阅或预订完的图书信息,以后需要这些图书信息时,直接从该表读取。
表5tb_bookcache
书名
表6:
tb_newbook
存放新书信息,入馆时间在15内的为新书
表6tb_newbook
Id
编号
自增长型
bookname
Bookkind
类别
表7:
tb_borrow
存放用户当前借阅信息
表7tb_borrow
用户所借图书编号
ordertime
借阅时间
表8:
tb_reserve
存放用户预订信息
表8tb_reserve
reservetime
表9:
tb_brohistory
存放用户的借阅历史
表9tb_brohistory
表10:
tb_return
存放用户还书信息
表10tb_return
returntime
表11:
tb_cntborrow
存放图书的借阅量
表11tb_cntborrow
ordernum
借阅量
表12:
tb_overborrow
存放借阅超期图书
表12tb_overborrow
Overtime
int(4)
超期时间
表13:
tb_Message
存放留言
表13tb_Message
Name
用户昵称
Question
Ntext(16)
留言
Answer
回复
Sdtime
发布留言时间
Anstime
回复留言时间
4.3系统功能模块设计
4.3.1登录模块
图4-2登录页面
用户在登录框内输入登录信息,系统账号信息记录到Session变量,并判断该密码和账号是否匹配,如果匹配则登录成功,进一步判断该用户是一般用户还是管理员,然后跳转到对应的用户页面。
关键代码如下:
stringstrComm="
select*fromtb_userwhereuserid='
"
+userid+"
'
;
//查找用户信息表
…………
if((sdr["
userpassword"
].ToString()==userpwd))//密码正确
{
stringstrComm1="
select*fromtb_userkindwherekindid='
+sdr["
userkind"
].ToString()+"
//查找该用户权限
…………
if(sdr1["
kindname"
].ToString()=="
管理员"
)//如果身分是管理员,则跳转到管理员页面
Response.Redirect("
admin.aspx?
name="
+System.Web.HttpUtility.UrlEncode(sdr["
username"
].ToString()));
4.3.2信息查询模块
图4-3信息查询模块图
管理员可输入账号查看用户信息,也可以浏览的方式查看所有用户信息。
以浏览方式查看信息效果图:
图4-4用户信息浏览
采用数据绑定,将用户信息表中一般用户的账号绑定到DataGrid控件,关键代码如下:
selectuserid,username,userkindfromtb_userwhereuserkind='
002'
SqlDataAdaptersda=newSqlDataAdapter(strComm,Conn);
DataSetds=newDataSet();
sda.Fill(ds,"
tb_user"
);
dg.DataSource=ds.Tables["
].DefaultView;
dg.DataBind();
用户账号为超级链接,点击可查看详细信息:
图4-5用户详细信息
查询馆藏图书信息:
图4-6图书信息查询
从上图可知,用户根据四种关键字类型选择进行精确或模糊查询,以“编号”,“模糊查询”为例,输入“a”,查询结果如下:
图4-7查询结果
if(rd_id.Checked)//如果关键字类型为编号
…………
else//如果为模糊查询
select*fromtb_bookwherebookidlike'
%"
+srchkey+"
%'
//查找编号类似的图书
借阅排行查询:
需要访问tb_cntborrow表,这是用来记录所借图书借阅量的表,表中记录的产生是在用户借阅图书时,同时更新tb_cntborrow表中,该图书编号对应的借阅数量。
当用户点击“借阅排行”时,按借阅量降序显示。
更新借阅量关键代码如下:
借阅超期查询:
访问超期信息表tb_overborrow,该表的产生在后面的章节中介绍。
新书查询:
访问新书信息表tb_newbook。
系统规定15天内到馆的图书为新书,新书入库时,系统将新书信息加入该表,在用户页面加载时,删除表内到馆时间超过15天的图书,剩下的即为新书,关