1⒈系统规划现代人的生活离不开图书,不论在家还是在公司,读书已经成为了一种生活惯。然而现在的图书种类繁多,数量庞大,出版速度快,要对这些书籍进行管理,传统的纯人工管理方法已经不能适用。为了更好,更快的管理这些图书,我们必须提出一种行之有效的方法。为此我们需要一个高效率的系统来进行管理。计算机的发展在很大程度上帮助我们解决了这个问题。首先,计算机可以代替人工进行许多繁杂的劳动;其次,计算机可以节省许多资源;第三,计算机可以大大的提高人们的工作效率;第四,计算机可以使敏感文档更加安全等。现在我国的很多学校图书馆,公司,企业都是用了计算机管理书资料,这种管理机制节省了很多人力和物力,在信息时代这种管理方法必然被广泛应用。1.1可行性分析1.1.1运行可行性管理可行性主要是管理人员是否支持,现有的管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等。规章制度和管理方法为书城的建设提供了制度保障。人员的适应性本系统界面美观,操作简单方便,不熟悉计算机的用户亦能自如的操作,按所需可对各类信息进行查询与状态显示。1.1.2技术可行性此次课程设计是大学专业知识的一次综合应用与提高,通过上网,图书馆,我查到了一定量的资料,满足这次课程设计的要求。1.2划分子系统1.2.1业务调查本次调查是促进图书馆与读者沟通的重要手段,也是图书馆确定发展的目标,怎么去改变图书馆理系统的研发以及及时适应读者需求变化,有针对性地改进图书馆管理的重要依据。自从进入了自动化、网络化、数字化建设以来,在读者心中需求一个什么样的系统来为他们服务。(1)、到馆率的调查。65%的学生和52%老师平均每月都有2-5次去图书馆借阅图书。其中到图书馆借阅专业图书和普通书刊的人分别占31%和39%,共计70%。(2)、关于图书馆数字资源的使用程度。超过一半的人表示基本会,这说明多数人还是能掌握查询书目的方法。但31%的同学表示不太会用,这凸现了2读者和图书馆双方的问题,图书馆还有不足之处,还应该在数字资源的相关知识间普及。调查还显示,对图书馆藏书质量与服务态度的满意程度,接近50%的同学表示比较满意,有95条建议认为想借的书找不到,125建议提出图书馆找书不方便。数字资源。学生问卷中关于购买和试用了哪些数据库的问题回答“不知道”的读者占很大比例,这说明图书馆对数字资源的宣传工作国度不够,覆盖面窄。在教师问卷中,认为图书馆目前的数字资源42.5%的老师认为不能满足,还需要增加教学科研所需的数字资源。1.3制定信息系统开发方案1.3.1划分子系统图书管理系统主要包括四个子系统,如图1.1所示:图1.1系统功能模块图1.3.2对各子系统的评价1.用户管理子系统用户信息:本图书管理系统需要用户填写基本信息用户操作:用户可直接在终端登录、操作、退出本系统。图书管理系统用户管理图书管理读者管理借阅管理用户信息用户操作图书类别信息图书信息读者类别信息读者信息借阅类别信息借阅信息32.图书管理子系统图书类别信息:按照图书类别进行区分,并进行图书类别添加,维护等。图书信息:对图书进行进一步的划分,图书添加,图书信息维护。3.读者管理子系统读者类别信息:对读者身份进行划分,读者种类添加,读者种类维护。读者信息:进一步对读者进行详细的划分,读者添加,读者维护。4.借阅管理子系统借阅类别信息:对读者借阅的书籍信息进行记录。借阅信息:进一步的详细记录信息,借阅编号,图书名称等。1.3.3信息系统资源分配计划(1)对系统进行第一次登陆用户,进行记录,并在数据库中保留信息(2)对多次用户进行信息记录,在数据库中进行用户信息保留。4⒉系统分析2.1需求确定图书馆管理系统开发。系统开发的总的设计目标是实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理。本系统主要实现对图书馆信息的管理,主要功能为管理有关读者、图书、借阅、查询、删除和管理员的信息等。本系统结构分为读者信息管理、图书信息管理,读者管理可以浏览读者的信息,可以对读者信息进行维护。图书管理可以浏览图书的信息,可以对图书信息进行维护。借阅管理可以显示当前数据库中书籍借阅情况,可以对借阅信息进行维护。本系统主要解决的问题是利用关键字对数据库进行查询。本系统的宗旨是提高图书管理工作的效率,减少相关人员的工作量,使学校的图书管理工作真正做到科学、合理的规划,系统、高效。2.2需求分析系统应用和系统管理相结合在系统中,用户可以对图书进行查询、查阅、借和还等操作理员可以对用户和图书进行分配权限,控制图书的流通。图书管理系统应具备以下两个特点:◎性能需求为了保证系统能够长期、安全、稳定、可靠、高效的运行,图书管理系统应该满足以下的性能需求:①统处理的准确性和及时性②统的开放性和系统的可扩充性③统的易用性和易维护性④系统的先进性⑤系统的响应速度◎环境需求综合开发此软件的功能需求和性能需求,此软件所需要的开发环境相当自由,可以在众多版本的操作系统上开发和运行;如:windows72.2.1数据流程图5图2.1数据流程图2.2.2数据字典图书管理系统数据字典如表2.1所示:表2.1数据字典数据流名:图书信息组成:ISBN,书名,出版社,作者,价格,数量,书籍描述,价格,类别数据流名:书籍类别组成:图书类别编号,图书类别名称,图书类别描述数据流名:管理员信息组成:工作号,姓名,性别,年龄,电话,工资数据流名:读者信息组成:读者编号,姓名,性别,年龄,种类,电话,地址,累计借书数据流名:借阅信息组成:借阅ID,ISDN,读者编号,借出日期,应归还日期,实际归还日期数据流名:读者种类组成:读者编号,读者类别名称,读者种类描述文件名:图书信息表组成:ISBN,书名,出版社,作者,价格,数量,书籍描述,价格,类别文件名:管理员信息表组成:工作号,姓名,性别,年龄,电话,工资文件名:读者信息表组成:读者编号,姓名,性别,年龄,种类,电话,地址,累计借书6文件名:借阅信息表组成:借阅ID,ISDN,读者编号,借出日期,应归还日期,实际归还日期文件名:管理员-书籍表组成:工作号,ISBN,添加时间,是否在馆,文件名:管理员-读者表组成:工作号,读者编码,确认归还7⒊系统设计3.1数据库设计原则技术来保持系统数据的安全性、完整性和共享性。对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来满足用户在各方面提出的功能要求。3.2数据库概念结构设计图3.1数据库概念结构设计3.3数据库逻辑结构设计图3.2(a)图书信息实体属性8图3.2(b)图书类别实体属性图3.2(c)管理员信息实体属性3.4数据库物理结构设计支持的操作系统:Windows732位系统:具有Intel1GHz(或同等性能的兼容处理器)或速度更快的处理器(建议使用2GHz或速度更快的处理器)的计算机64位系统:1.4GHz或速度更快的处理器最低1GBRAM(建议使用2GB或更大的RAM)2.2GB可用硬盘空间存储路径:D:\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\Data\L_Log.LDFD:\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\Data\L_Data.MDF'9⒋系统实施4.1系统结构图4.1功能模块图4.2模块界面设计图4.2(a)管理员登陆模块界面图图书管理系统用户管理图书管理读者管理借阅管理用户信息用户操作图书类别信息图书信息读者类别信息读者信息借阅类别信息借阅信息10图4.2(b)图书类别添加模块界面图4.3(c)图书添加模块界面4.3程序代码4.3.1数据库端代码◎创建数据库USEmasterGOIFEXISTS(SELECTnameFROMmaster.dbo.sysdatabasesWHEREname=N'L')DROPDATABASE[L]GOCREATEDATABASE[L]ON(NAME=N'LData',FILENAME=N'D:\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\Data\L_Data.MDF',SIZE=100,11FILEGROWTH=10%)LOGON(NAME=N'dbVirtualID_Log',FILENAME=N'D:\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\Data\L_Log.LDF',SIZE=20,FILEGROWTH=10%)COLLATEChinese_PRC_CI_ASGO◎创建图书类别表图书类别表tbookTypeCreateTabletbookType(图书类别编号INT,图书类别名称char(50)NotNull,图书类别描述char(20)NotNull,);insertintotbookTypevalues('06','计算机类','有关计算机的书籍'));表4.1(a)图书类别表◎创建图书信息表图书信息表BOOKCreateTableBOOK(ISBNchar(20)PrimaryKeyNotNull,书名char(50)NotNull,作者char(20)NotNull,出版社char(50),出版日期char(20),数量INT,12价格INT,类别CHAR(20),描述char(300));insertintobookvalues('01','数据库','王珊','高等教育出版社','2010年02月14日',23,39,'计算机','')图4.1(b)图书信息表4.3.2应用程序代码(如:VB、VC、C#.net、ASP.net、Java等程序代码)packagecom.bookmanager.view;importjava.awt.EventQueue;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.sql.Connection;importjava.sql.ResultSet;importjavax.swing.ButtonGroup;importjavax.swing.GroupLayout;importjavax.swing.GroupLayout.Alignment;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JComboBox;importjavax.swing.JInternalFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JRadioButton;importjavax.swing.JTextArea;importjavax.swing.JTextField;importjavax.swing.LayoutStyle.ComponentPlacement;importjavax.swing.border.LineBorder;importcom.bookmanager.dao.BookDao;importcom.bookmanager.dao.BookTypeDao;importcom.bookmanager.model.Book;importcom.bookmanager.model.BookType;importcom.bookmanager.util.DbUtil;importcom.bookmanager.util.StringUtil;publicclassBookAddInterFrmextendsJInternalFrame{privateJTextFieldbookNameTxt;privateJTextFieldAuthorTxt;privateJTextFieldPriceTxt;privateJTextAreabookD