收藏 分享(赏)

图书馆管理系统77396.doc

上传人:dzzj200808 文档编号:2633635 上传时间:2018-09-24 格式:DOC 页数:24 大小:1.81MB
下载 相关 举报
图书馆管理系统77396.doc_第1页
第1页 / 共24页
图书馆管理系统77396.doc_第2页
第2页 / 共24页
图书馆管理系统77396.doc_第3页
第3页 / 共24页
图书馆管理系统77396.doc_第4页
第4页 / 共24页
图书馆管理系统77396.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、学生学号 0912050127 成绩管理信息系统大作业 课程名称 管理信息系统指导教师姓名 王旭琪学 生 姓 名 白海雕专 业 班 级 计科 0901完 成 日 期 2012 年 5 月 7 日20112012 学年 第 2 学期目录一、系统简介 2二、可行性和需求分析 32.1 可行性研究 32.2 需求分析 32.3 系统功能结构图 42.4 系统流程图 42.5 数据流图 52.6 数据字典 52.7 概念结构设计 62.8 数据库概念设计 7三、概要设计 103.1 系统功能结构模块 .103.3 功能函数设计 11四.详细设计 .13五调试分析 14六、用户使用手册 15一、系统简介

2、随着图书馆的规模不断的增大,图书量及其他相关的信息量海量增加,面对庞大的信息量,传统的图书馆的人工管理方式可能会导致管理上的混乱,相关资源的运用的也过多浪费,因此必须有一套有效的、合理的、规范的图书馆管理系统,对图书馆进行集中有效的管理,解决信息量大,借书还书工作量大,图书统计工作难,图书藏书更新慢的,检索慢等各种问题。本系统能实现图书馆的管理的基本功能,图书检索、借还、挂失预约等,管理员对系统相关的管理图书管理,学生信息管理等。系统采用 java 语句编写,用 myeclipse 作为开发工具,mysql 作为数据库二、可行性和需求分析2.1 可行性研究技术可行性:Java +swing +

3、Jdbc+Mysql 技术上可行的经济可行性:无2.2 需求分析通过对图书馆的了解,确定本系统具备一下功能。A学生用户端查询图书,学生可以进行简单的数据查询和高级查询挂失图书,当图书丢失时进行相关的挂失预约图书,当所借书不在管内时可以对图书进行预约 B管理员端图书管理,包括对图书的增、删、改、查 ; 管理员管理,超级管理员能对普通管理员进行增、删、改、 ,普通管理员只有修改 自己的信息进行修改借阅管理,即对图书的外借和归还及交纳罚款的管理C.系统目标:通过系统分析并进行相关探讨,确定系统最终目标如下a. 实现需求分析阶段 A.B 及客户提出的的功能;b. 提高键盘的易用性,减少鼠标的操作功能c

4、. 使用较为流行的树状列表控件作为导航,直观的显示系统结构。d. 洽淡地使用监听器进行动作时间的监听e. 合理的使用表格进行数据显示f. 在适当的场合灵活运用 swing 的各种控件,如面板,标签等2.3 系统功能结构图图书馆管理系统学生端 管理员端学生用户管理查询图书预 约图书挂失图书图书管理查询图书借阅预约管理交纳罚款管理员管理2.4 系统流程图顶层图用户 管理系统 用户需求信息 处理结果0 层图需求信息借书还书处理学生用户管理图书信息管理管理员信息管理预约挂失管理需求分类借还书信息学生信息图书信息预约挂失信息管理员信息信息处理结果信息处理结果信息处理结果信息处理结果信息处理结果2.5 数

5、据流图管理员D 11 . 1接收事务1 . 2更新库信息1 . 3处理事务产生结果D 2借书文件库存信息库存信息事务 事务 事务处理信息处理信息2.6 数据字典字段名称 数据类型 字段大小 字段说明StuNO Int N/A 学生学号StuName Varchar 50 学生姓名StuAge Int N/A 学生年龄StuSex Varchar 50 学生性别Class Varchar 50 所在班级Derpartment Varchar 50 所在院系Tel Char 11 电话Permitted Varchar 50 学生借阅许可Password Varchar 50 密码mgNo Int

6、 N/A 管理员 IDPermitted Varchar 50 管理员权限Password Varchar 50 管理员密码BookNO Int N/A 图书 IDBookName Varchar 50 图书名称Author Varchar 50 图书作者Publisherment Varchar 50 出版社BuyTime Varcgar 50 购进时间Borrowed Varchar 50 是否借阅Ordered Varchar 50 是否预约Borrowed Varchar 50 借阅时间ReturnTime Varchar 50 归还时间DelayTime Varchar 50 超期天

7、数LBNO varchar 50 挂失书号2.7 概念结构设计根据系统结构图和数据流图描述出实体联系图 E-R 图,该系统包含的实体主要有图书、学生、管理员。2.7.1 管理员、图书 E-R 图管理员名称密码 权限图书购买时间书号书名出版社是否借阅 是否预约作者2.7.2 学生用户管理图学生电话院系班级年龄性别姓名学号密码借阅许可2.7.3 实体间简单的关系图普通管理员超级管理员学生用户图书管理管理管理管理管理管理m nnnn11nn12.8 数据库概念设计根据相关功能设计和 E-R 图,确定本系统共设计 7 张表,分别为学生用户基本信息表、管理员基本信息表、图书基本信息表、超期图书信息表、预

8、约图书信息表、挂失图书信息表、借阅图书信息表。数据表设计2.8.1 学生用户基本信息表:用于记录学生用户的基本信息,主要字段为学生用户和密码等,具体如下Create table student(StuNo int primary key, not nullStuName varchar(50),StuAge int ,StuSex varchar(20),Class varchar(50),Department varchr(50),Tel varchar();Permitted varchar(50),Password varcahr(50);2.8.2 管理员基本信息表 :用于记录管理员的

9、用户 ID,其具体显现如下Create table Manager(mgNo int primary key , permitted varchar (50) not null,password varchar(50) not null) ;2.8.3 图书基本信息表:该表用于记录图书的基本信息,其具体实现如下Create table book (BookNO int primary key,BookName varchar(50 ) ,Author varchar(50) ,Publisherment varchar (50 ) ,BuyTime varchar(50) ,Borrowed

10、varchar(50) ,Ordered varchar(50) ;2.8.4 借阅图书信息表:该表用来记录学生用户借阅图书的信息,包括记录学号、书号。借阅时间的等信息,表设计如下:Create table record (BookNO int primary key ,StuNO int primary key,Borrowed varchar(50) ,ReturnTime varchar(50) ,Borrowed varchar(50) ,Ordered varchar(50) ;)2.8.5 超期图书信息表: 该表用来记录学生超期图书的信息,包括图书 ID 和学生姓名等信息。具体表设

11、计如下:Create table exceedtime(StuNO int null,BookNO int null BookName varchar(50 )DelayTime int ) ;Primary key (StuNO , BookName) ) ;2.8.6 预约图书信息表: 该表用来记录学生预约的图书信息,包括图书 ID 和学生姓名等信息,涉及如下:Create table orderreport (BookNO int primary ,StuName varchar(50) ,Class varchar(50 ) ;2.8.7 挂失图书信息表:该用来记录学生丢失图书的信息

12、,包括图书 ID 和学生学号等信息,设计如下:Create table losebook (LBNO int primary key,StuNO int ,BookNO int ,BookName varchar(50) ) ;三、概要设计3.1 系统功能结构模块根据系统项目的开发要求,系统开发时划分了以下几个模块 借阅图书模块、预约图书模块。挂失图书模块、管理员管理模块。管理员管理模块又分学生用户管理模块、图书管理模块。结构模块功能图3.23.3 功能函数设计3.3.1 类封装:DataBase:封装了数据库连接和数据库操作及资源的释放的信息Root:封装了主页信息Login:封装了登录信息

13、Student:封装了学生信息BookManage:封装了图书基本管理的信息Manager:封装了管理的信息3.3.2 功能函数函数设计3.3.2.1:数据库部分在 DataBase 类中包含三个方法(1)void getQuery(String sql)函数功能:执行数据的查询功能(2)int updateDb(String sql):函数功能:执行数据的增、删、改操作(3)void realease() 函数功能:实现断开数据库连接及释放资源操作3.3.2.2:图书管理部分在 BookManage 类中包含一下方法(1) void insertBook() ;执行功能:实现图书的添加,添加

14、与图书的所有需求信息包括必须的书号,书名,作者等(2)void deleteBook();函数功能:根据输入的图书号,删除该图书在馆的信息(3) void updateBook()函数功能:根据输入的信息,修改相应的图书信息3.3.2.3 管理员管理部分 在 Manager 类中(1) void insertManager()函数功能:添加普通管理员和学生信息,包括设置相应的用户名密码和权限,在添加新学生用户时通过调用 student 类中void insertstudent()方法来添加学生信息(2)void deleteManager ()函数功能:删除用户信息,包括对学生的删除和对普通用

15、户的删除 ,不能删除超级管理员,调用 student 类中的 void deleteStudent()方法来执行删除学生信息(3)void updateManager()函数功能:修改用户信息,只能修改本省管理信息,不能修改学生信息,调用学生类 student 中 void updateStudent()方法来实现对学生信息的修改(4)void selectManager() void manager1()函数功能:用于超级管理员对于普通管理员的筛选并且选出后显示于界面列表中3.3.2.4 图书查询部分 位于 SearchBook 类中int seniorSearch():查询图书信息,其中有

16、包括简单查询:根据一个信息(书名,作者等)进行查询,和高级查询根据多信息进行查询(书名,作者出版社等),学生和管理员是都通过调用次方法来实现该工功能3.3.2.5 其他部分(1)void loseBook (int row) 函数功能:实现对图书丢失的进行挂失处理,返回显示在列表中的书行号。(2).int checkTime ( int sno ,int bno ) 函数功能:根据学号和书号判断所换书籍是否超期,共有超期没叫罚款,正常还书,超期交罚款几种情况。返回一个标志,该函数还能进行挂失处理(3) void updateTable()函数功能:实现对界面下列表的更新,即当还掉一本书后,实现

17、显示列表的更新四.详细设计1.系统主函数 main()设计开始学生端管理界面管理员端管理界面结束根据登录信息2.主页面详细设计开始学生 端 挂失预约图书操作显示主页面接收用户选择学生用户管理图书管理罚款管理管理员管理退出系统 ?结束C h o o s eNY五调试分析本系统在 Myeclipse8.0 以上版本中编译调试通过,可顺利运行,各项功能均达到设计的要求系统项目在包 huxin 中,可以采用分模块调试的方法进行编译,即完成一个函数功能木块就编译一个功能,最后进行整体编译六、用户使用手册1.此系统所需要的软件和环境相关配置如下:a. 系统采用 JDK1.6 或以上版本b. 数据库:采用

18、mysql5.0 或以上版本(c. 用 myeclipse 或 eclipse 作为开发工具)2.系统预览a.登录界面有“学生登录” 、 “管理员” 、 “清空”如果输入错误的密码和用户名均有对话框弹出提示/查询学号文本中所输入的学号是否在STUDENT表中sql=“select StuNo,Password from student where StuNO=“+Integer.parseInt(jtxtArray.getText().trim();db=new DataBase(); /创建DataBase类对象 db.getQuery(sql); /执行查询tryif(!db.rs.nex

19、t()JOptionPane.showMessageDialog(this,“输入有误,登录失败!“,“消息“,JOptionPane. INFORMATION_MESSAGE);elseString stuNo=db.rs.getString(1).trim(); /得到文本框中的学号和密码String password = db.rs.getString(2).trim();if(jtxtArray.getText().trim().equals(stuNo)new StudentSystem(); /创建学生端窗体this.dispose(); / 将登录窗体隐藏elseJOptionP

20、ane.showMessageDialog(this, “输入有误,登录失败!“);/连接数据库代码public DataBase()try/加载MySQL的驱动类,并创建数据库连接Class.forName(“org.gjt.mm.mysql.Driver“); con=DriverManager.getConnection(“jdbc:mysql:/localhost:3306/test“,“root“,“12345“);stat=con.createStatement();/创建Statement对象catch(Exception e)/如果从Login类传的参数不对,则提示出错e.pr

21、intStackTrace();public void getQuery(String sql)/声明select方法tryrs=stat.executeQuery(sql);b.学生登录系统系统后,就进入学生管理系统,如图,在左边的树状列表,可以通过单击不同的节点进行相应的操作。当用户单击“退出”节点时会弹出对话框提示用户是否退出系统c.进入系统管理后,单击树状中各个节点便可进行相应的功能操作“查询图书” 、 “预约图书” 、 “挂失图书”public int seniorSearch()int flag=0;/设置标志位String str0=jtxtArray0.getText().tr

22、im();String str1=jtxtArray1.getText().trim();String str2=jtxtArray2.getText().trim();if(str0.equals(“)flag+;if(!str0.equals(“)flag+;if(!str0.equals(“)jtxtArray0.setText(“);jtxtArray1.setText(“);if(!str0.equals(“)jtxtArray0.setText(“);jtxtArray2.setText(“);if(str0.equals(“)jtxtArray1.setText(“);jtxtA

23、rray2.setText(“);if(!str0.equals(“)jtxtArray0.setText(“);jtxtArray1.setText(“);jtxtArray2.setText(“);if(str7.trim().equals(“是“) /该书已经被预约,输出提示信息框JOptionPane.showMessageDialog(this,“此书已经被预约“,“消息“,JOptionPane.INFORMATION_MESSAGE);Else /预约成功,设置预约项Ordered为是,表示该书已经被预约sql=“update BOOK set Ordered=是 where B

24、ookNO=“+Integer.parseInt(jtxt3.getText().trim();db.updateDb(sql);/输出预约成功信息框JOptionPane.showMessageDialog(this,“预约成功“,“消息“,JOptionPane.INFORMATION_MESSAGE);sql=“insert into ORDERREPORT values(“+Integer.parseInt(jtxt3.getText().trim()+“,“+stuName+“,“+classes+“,“+bookName+“,“ +Integer.parseInt(jtxt4.ge

25、tText().trim()+“,“+author+“)“;db.updateDb(sql);d.进入管理员系统后就在主页面如图,在界面左边有树形列表,进行相应功能的选择进行操作,包括“学生用户管理” 、 “图书管理” 、 “借阅预约图书” 、 “交纳罚款” 、 “管理员管理员”等功能选择图书管理主页面管理学生用户界面插入学生信息if(str10.equals(“)return;if(!str10.equals(“)sql=“insert into STUDENT(StuNO,StuName,StuSex,Class,Department,“+“Password,Permitted) valu

26、es(“+str10+“,“+str11+“,“+ str12 + “, “+str13+“,“+str14+“,“+str15+“,“+str16+“)“;db=new DataBase();db.updateDb(sql);/插入学生信息删除学生try/对结果集进行异常处理if(db.rs.next()sql=“delete from STUDENT where StuNO=“+Integer.parseInt(stuno);db=new DataBase();db.updateDb(sql);/删除学号为输入内容的学生的信息JOptionPane.showMessageDialog(th

27、is, “成功删除该生信息记录!“, “消息“,JOptionPane. INFORMATION_MESSAGE);return;else/若Record表中有该学号,则输出提示对话框JOptionPane.showMessageDialog(this, “不能删除该生信息他有书未还,请他还书!“,“消息“,JOptionPane. INFORMATION_MESSAGE);管理图书页面在最后可以选择退出系统功能图书信息插入Book表void insertBook()for(int i=0;i0)JOptionPane.showMessageDialog(this,“恭喜你,修改成功!“, “消息“,JOptionPane. INFORMATION_MESSAGE); break;在最后可以选择退出系统功能else if(cnv.value.equals(“退出“)/显示退出界面int i=JOptionPane.showConfirmDialog(Root.this,“是否退出系统?“,“消息“,JOptionPane. YES_NO_OPTION);if(i=JOptionPane.YES_OPTION)/退出系统System.exit(0);

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

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报