asp课程设计之图书管理系统.doc

上传人:laozhun 文档编号:2384340 上传时间:2023-02-17 格式:DOC 页数:16 大小:490.50KB
返回 下载 相关 举报
asp课程设计之图书管理系统.doc_第1页
第1页 / 共16页
asp课程设计之图书管理系统.doc_第2页
第2页 / 共16页
asp课程设计之图书管理系统.doc_第3页
第3页 / 共16页
asp课程设计之图书管理系统.doc_第4页
第4页 / 共16页
asp课程设计之图书管理系统.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《asp课程设计之图书管理系统.doc》由会员分享,可在线阅读,更多相关《asp课程设计之图书管理系统.doc(16页珍藏版)》请在三一办公上搜索。

1、图书馆管理系统一、 系统概述1.1引言对于图书馆来说,如何简化图书流通的操作流程,提高图书管理的工作效率是关键因素。因此,需要引入图书馆管理系统来实现图书馆的现代化管理。作为一个图书馆管理系统,首先,必须要有友好的、美观的操作界面,人机对话操作方式简单。其次,图书信息和读者信息分类管理,能实现综合查询。再次,对图书借阅信息,图书借阅排行榜信息实现全程数据跟踪,保证数据的真实性和及时性。最后,能实现及时的提醒用户归还即将到期的图书,做到图书借阅管理流程规范且流畅。更具图书管日常图书管理的需求和图书借阅的管理流程,如下图,图书馆管理系统功能模块主要包括系统设置、读者管理功能、图书管理功能、图书借阅

2、功能和相关的查询功能。其中管理员和读者的功能模块如下图:读者功能模块管理员功能模块1.2 图书管理系统的可行性分析本次课程设计题目:“图书管理系统的开发”主要目的是利用数据库软件编制一个管理软件,用以实现图书、读者以及日常工作等多项管理。同时对整个系统的分析、设计过程给出一个完整论证。图书管理系统是一种基于集中统一规划的数据库数据管理新模式。在对图书、读者的管理,其实是对图书、读者数据的管理。本系统的建成无疑会为管理者对图书管理系统提供极大的帮助。本系统的设计主要从以下几方面做起:系统业务流程分析、系统的功能设计、系统的数据库结构设计等。作这些工作需对数据库知识有足够认识,并深入的了解c#的使

3、用和管理系统的相关知识。在信息时代的今天,人类需要对在政治、经济、军事、文化、科研、教育等领域产生的大量信息进行管理,并对数据进行加工处理,数据库技术则是信息管理与数据处理的先进技术。随着信息量的不断增加,作为计算机的三大主要应用(科学计算、过程控制和数据处理)之一的数据处理,已迅速上升为计算机应用的主要方面,数据库技术则成为人们日常生活中处理数据不可缺少的有力工具,并且现代的信息管理系统几乎都以数据库技术作为核心。现在大多数的图书管理方式为手工处理,重复劳动多,劳动强度大,而且容易出错,新系统的使用能否可以很好的解决这些问题要看系统的可行性,可行性研究的目的是用最小的代价在尽可能短的时间内确

4、定问题是否能够解决。系统的可行性分析有以下几个方面:(1)技术可行性:处理速度快、准确通过权限的设置,数据的安全性好、方便查询、借阅管理等。(2)经济可行性:系统建设不需要很大的投入、可缩减人力投入。(3)运行上可行性:本系统作为一个小型的图书馆信息管理系统,所耗费的资源非常的小。(4)从各种社会因素可行性分析:可降低工作人员工作强度,提高效率,会得到学校工作人员的一致同意的。综上所述通过可行性分析认为新系统的开发方案切实可行,可进行开发。1.3 系统开发运行环境系统开发环境:Microsoft Visual Studio 2010系统开发语言:c#运行平台:Windows 8数据库:sql

5、2012二、 图书馆管理系统模块分析2.1、数据流图(1)图书借阅系统完成用户的借书过程其数据流图如图3-2所示。图3-1 借阅系统的数据流图(2)还书系统完成图书的归还过程其数据流图如图3-3所示。图3-2 归还系统的数据流图(3)图书档案管理系统为用户提供图书档案信息其数据流图如图3-4所示。图3-3 图书档案管理数据流图(4)读者档案系统用于记录读者的详细信息其数据流图如图3-5所示。图3-4 读者档案管理数据流图2.2、图书管理系统用例图2.2.1读者用例图2.2.2 管理员用例图2.3图书馆管理系统ER图三、 各模块的具体功能与实现3.1 系统设置系统设置主要包括的功能有:修改密码、

6、用户添加、用户修改功能,核心代码如下:protectedvoid Page_Load(object sender, EventArgs e) if (!IsPostBack) /*验证是否登陆了系统*/if (SessionadminFlag = null) Response.Write(top.location.href=./login.aspx;);return; protectedvoid Btn_ChangePassword_Click(object sender, EventArgs e) AdminModel adminModel = newAdminModel(); adminM

7、odel.AdminUsername = SessionadminUsername.ToString(); adminModel.AdminPassword = this.NewPassword.Text.ToString();AdminLogic adminLogic = newAdminLogic();if (adminLogic.ChangePassword(adminModel)this.ErrMessage.Text = 密码修改成功!;elsethis.ErrMessage.Text = 密码修改失败!; 3.2读者管理读者管理主要包括:添加读者类别、读者类别管理、添加读者信息、读

8、者信息管理等功能;部分核心代码如下protectedvoid Page_Load(object sender, EventArgs e) if (!IsPostBack) /*验证是否登陆了系统*/if (SessionadminFlag = null) Response.Write(top.location.href=./login.aspx;);return; string adminUsername = SessionadminUsername.ToString();AdminModel adminModel = (newAdminLogic().GetAdmin(adminUserna

9、me);if (adminModel.ReaderTypeFlag = 0) Response.Write(alert(权限不够!);location.href=./desk.aspx;);return; protectedvoid Btn_Add_Click(object sender, EventArgs e) /*建立读者类型对象模型并传入界面上的各个参数*/ReaderTypeModel readerModel = newReaderTypeModel(); readerModel.ReaderTypeName = this.ReaderTypeName.Text; readerMod

10、el.LoanNum = Int32.Parse(this.LoanNum.Text); readerModel.LoanDays = Int32.Parse(this.LoanDays.Text); readerModel.ContinueDays = Int32.Parse(this.ContinueDays.Text); readerModel.ReserverNum = Int32.Parse(this.ReserveNum.Text);/*调用业务层进行添加*/ReaderTypeLogic readerTypeLogic = newReaderTypeLogic();if (rea

11、derTypeLogic.AddNewReaderType(readerModel) Response.Write(alert(读者类别信息添加成功!);location.href=readerTypeManage.aspx;); else Response.Write(alert( + readerTypeLogic.ErrMessage + );); protectedvoid Page_Load(object sender, EventArgs e) if (!IsPostBack) /*验证是否登陆了系统*/if (SessionadminFlag = null) Response.W

12、rite(top.location.href=./login.aspx;);return; string adminUsername = SessionadminUsername.ToString();AdminModel adminModel = (newAdminLogic().GetAdmin(adminUsername);if (adminModel.ReaderTypeFlag = 0) Response.Write(alert(权限不够!);location.href=./desk.aspx;);return; 3.3图书管理图书管理主要包括:添加图书类别、图书类别管理、添加图书信

13、息、图书信息管理等功能;部分核心代码如下protectedvoid Page_Load(object sender, EventArgs e) if (!IsPostBack) /*验证是否登陆了系统*/if (SessionadminFlag = null) Response.Write(top.location.href=./login.aspx;);return; string adminUsername = SessionadminUsername.ToString();AdminModel adminModel = (newAdminLogic().GetAdmin(adminUse

14、rname);if (adminModel.DiskTypeFlag = 0) Response.Write(alert(权限不够!);location.href=./desk.aspx;);return; protectedvoid Btn_Add_Click(object sender, EventArgs e) DiskTypeModel diskTypeModel = newDiskTypeModel(); diskTypeModel.DiskTypeName = this.DiskTypeName.Text;DiskTypeLogic diskTypeLogic = newDiskT

15、ypeLogic();if (diskTypeLogic.InsertDiskTypeInfo(diskTypeModel) Response.Write(alert(图书类型信息添加成功!);location.href=diskTypeAdd.aspx;); else Response.Write(alert( + diskTypeLogic.ErrMessage + );); protectedvoid Page_Load(object sender, EventArgs e) if (!IsPostBack) /*验证是否登陆了系统*/if (SessionadminFlag = nul

16、l) Response.Write(top.location.href=./login.aspx;);return; string adminUsername = SessionadminUsername.ToString();AdminModel adminModel = (newAdminLogic().GetAdmin(adminUsername);if (adminModel.DiskFlag = 0) Response.Write(alert(权限不够!);location.href=./desk.aspx;);return; protectedvoid Btn_Add_Click(

17、object sender, EventArgs e) /*首先构造图书对象的模型,并将界面输入的各个信息保存模型的对应属性中*/DiskModel diskModel = newDiskModel(); diskModel.DiskIndex = this.DiskIndex.Text; diskModel.DiskTypeId = Convert.ToInt32(this.DiskType.SelectedValue); diskModel.DiskName = this.DiskName.Text; diskModel.DiskIntroduce = this.DiskIntroduce

18、.Text; diskModel.DiskNum = Convert.ToInt32(this.DiskNum.Text); diskModel.DiskPublish = this.Publishing.Text.ToString().Trim(); diskModel.DiskAuthor = this.Author.Text.ToString().Trim(); diskModel.DiskShelf = this.BookShelf.Text.ToString().Trim(); diskModel.DiskAddress = this.DiskAddress.Text; diskMo

19、del.IsRecommend = this.IsRecommend.SelectedValue; /*然后调用业务层将此图书信息加入系统中*/DiskLogic diskLogic = newDiskLogic();if (diskLogic.AddNewDisk(diskModel) Response.Write(alert(图书信息添加成功!);location.href=diskAdd.aspx;); else Response.Write(alert( + diskLogic.ErrMessage + );); protectedvoid Btn_Cancle_Click(objec

20、t sender, EventArgs e) Response.Write(location.href=diskAdd.aspx;); 3.4 图书借阅图书借阅主要包括:图书借阅、图书归还、图书预约查询、图书借阅统计、统计超期图书等功能;部分核心代码如下protectedvoid Btn_Add_Click(object sender, EventArgs e) string readerId = this.ReaderId.Text;string diskIndex = this.DiskIndex.Text;DiskLogic diskLogic = newDiskLogic();Disk

21、Model diskModel = diskLogic.GetDiskInfo(diskIndex);LoanLogic loanLogic = newLoanLogic();if (loanLogic.ReturnDisk(diskModel.Id,readerId,SessionadminUsername.ToString()this.Result.Text = 读者: + ReaderLogic.GetReaderNameById(readerId) + 归还图书: + diskModel.DiskName + 成功!;elsethis.Result.Text = loanLogic.E

22、rrMessage;this.ReaderId.Text = ;this.DiskIndex.Text = ; protectedvoid Btn_Add_Click(object sender, EventArgs e) string readerId = this.ReaderId.Text;string diskIndex = this.DiskIndex.Text;DiskLogic diskLogic = newDiskLogic();DiskModel diskModel = diskLogic.GetDiskInfo(diskIndex);LoanLogic loanLogic

23、= newLoanLogic();if (loanLogic.AddNewLoanInfo(diskIndex, readerId, SessionadminUsername.ToString() diskLogic.UpdateDiskLoanNum(diskModel.Id); (newReaderLogic().UpdateReaderLoanNum(readerId);this.Result.Text = 读者: + ReaderLogic.GetReaderNameById(readerId) + 借阅图书: + DiskLogic.GetDiskNameById(diskModel

24、.Id) + 成功!; elsethis.Result.Text = loanLogic.ErrMessage;this.ReaderId.Text = ;this.DiskIndex.Text = ; protectedvoid Page_Load(object sender, EventArgs e) /*验证是否登陆了系统*/if (SessionadminFlag = null) Response.Write(top.location.href=./login.aspx;);return; /*得到该读者的所有借阅图书信息*/DataSet ds = LoanLogic.GetDisk

25、LoanInfo();this.GridView1.DataSource = ds;this.GridView1.DataBind(); publicstring GetISReturn(string str) if (str = 1) return是; elsereturn否; protectedvoid btnSearch_Click(object sender, EventArgs e) DataSet ds = LoanLogic.GetLoanInfo(this.txtKey.Text.ToString();this.GridView1.DataSource = ds;this.Gr

26、idView1.DataBind(); 3.5图书查询图书查询用于对各模块从数据库获取图书的相关信息,核心代码如下:protectedvoid Page_Load(object sender, EventArgs e) if (!IsPostBack) /*验证是否登陆了系统*/if (SessionreaderFlag = null) Response.Write(top.location.href=./login.aspx;);return; /*初始化图书类别下拉框的信息*/this.DiskType.Items.Add(newListItem(请选择图书类别,0);DataSet ds

27、 = (newDiskTypeLogic().GetDiskTypeInfo(); for (int i = 0; i 6) e.Row.Cells4.Text = publishing.Substring(0, 6) + .; */ protectedvoid GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) /*取得查询的各个参数*/string keyword = this.Keyword.Text;int diskTypeId = Int32.Parse(this.DiskType.SelectedV

28、alue);string isRecommend = this.IsRecommend.SelectedValue;/*调用业务层得到查询的结果数据集*/DataSet ds = newDataSet(); ds = (newDiskLogic().QueryDiskInfo(keyword, diskTypeId, isRecommend);/*将查询结果集绑定到gridview控件上*/this.GridView1.DataSourceID = null;this.GridView1.DataSource = ds;this.GridView1.PageIndex = e.NewPageI

29、ndex; ;this.GridView1.DataBind(); 3.6 退出用于退出系统,核心代码如下:protectedvoid Page_Load(object sender, System.EventArgs e) Session.Abandon(); Response.Redirect(login.aspx);四、 图书馆管理系统运行截图登录模块主界面添加图书图书信息读者管理权限修改五、 心得经过一个星期的设计和开发,图书管理系统基本开发完毕。其功能基本符合用户需求。对于数据的一致性的问题也通过程序进行了有效的解决。但是该系统还有许多不尽如人意的地方,在今后有待进一步改善。通过这次

30、课程设计真切地体会到课程设计的目的并不止于自己单纯任务的完成,而在于学习新的知识并掌握具体的方法,如何具体使用和具体应用你所学所用的语言。从而获得一种本领:就是融会贯通各种语言。回首整个开发设计过程,我学到了很多书本上学不到的东西。比如以前开发软件的时候,一般做的就是编码工作,实现比较简单的功能。但是这次课程设计,我要负责图书管理系统的整个开发过程,包括系统可行性分析、系统需求分析、系统概要设计、系统详细设计等方面的工作。在每个设计阶段我都能学到一些新知识,对我的动手能力提高很大。在整个课程设计过程中,我基本上完成了图书管理系统各个模块的功能,达到了课程设计的要求。页面设计还有进一步改善的地方,我会在今后的学习工作中着重加强这方面的锻炼。在以后的工作中,还会遇到很多类似的情况,此次课程设计为我以后的工作积累了很多宝贵的经验。在这一个星期中,从接到设计课题到具体设计再到完成系统开发,是一个不断地遇到问题与解决问题的过程。其中包括:分析各种需求、完善各种功能、增加必要环节、对各部分及整体进行检测与维护。当然仍存在许多问题不能解决地尽善尽美,还需不断地继续与探索。在结束设计的同时也感到了劳动的艰辛与劳动成果的来之不易,明白了课程设计是给自己提供了一个锻炼、升华、提高、完善的机会。

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号