96图书馆管理系统

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

图书馆管理系统目录一开发背景二系统分析(一)需求分析(二)功能分析三系统分析(一)绘制用例图设计系统功能(二)绘制系统流程图(三)系统演示(四)系统开发环境(五)文件夹组织机构四数据库分析与设计(一)数据库分析(二)数据库概念设计(三)数据库逻辑结构设计五系统登录模块六主窗体模块主窗体界面设计及代码一开发背景早年的图书馆采用的都是手工操作的管理方式,随着图书馆藏书种类的增长,藏书量的不断增加,读者群的不断增多,这种传统的管理方式,暴露出了许多的管理漏洞。随着计算机和网络技术在我国的快速发展,图书馆迫切需要一个能够实现自动化的管理系统。通过该系统能够实时显示图书的库存数量和种类信息,还能够对读者进行管理,还能够实时显示书籍的借阅情况,通过该系统来提高图书馆的管理水平,同时提高工作效率。参考文献:Java从入门到精通周小彤陈丹丹等编著清华大学出版社2010年7月第二版。Java项目开发案例精髓曲培新庞永庆林树泽许小荣等编著电子工业出版社2010年6月第一次印刷。SQLServer2000程序设计张鑫燕主编吴小松副主编科学出版社2008年7月第十二次印刷。二系统分析(一)需求分析图书馆管理系统是一个高度集成的图书信息处理系统,通过讲图书馆管理的各种功能进行整合,从而,达到高速检索信息、提高工作效率、降低管理成本等吗,目的。一个典型的图书馆管理系统应该能够管理所有的图书种类、图书信息以及读者信息,还需要提供各种图书信息的检索查询功能,该系统的自动化功能,能够大大减少图书馆管理人员,还能够减少管理人员的工作任务,从而降低管理开销和成本。(二)功能分析图书馆管理系统是管理图书的一个重要工具,一个功能完善的图书馆管理系统需要提供4个功能模块,分别是图书信息管理模块、读者信息管理模块、图书借阅信息管理模块以及操作员信息管理模块。其中各模块的具体说明如下。图书信息管理模块:该模块主要负责管理图书馆的图书信息,如图书编号、图书类别、图书名称以及作者等信息。读者信息管理模块:该模块主要负责管理图书馆的读者信息,如读者编号、读者姓名、最大借书量以及职业等信息。图书借阅信息管理模块:该模块主要负责管理图书馆的书籍借阅和归还信息,包括图书编号、读者编号、借书日期以及归还日期等信息。操作员信息管理模块:该模块主要负责管理图书馆的工作人员信息,包括操作员编号、用户名、密码等信息。三系统分析(一)绘制用例图设计系统功能图书馆管理系统是一个内部人员使用的系统,也就是说不是所有人都能够使用它,只有图书馆的工作人员才能使用。而图书馆的工作人员也分为两类,一类是操作员,主要负责图书的借阅和归还的工作;一类是管理员,除了操作员的所有功能外,还能够对书籍列表、书籍信息、读者信息等进行管理。下面以管理员为例绘制其所有对应的用例图。(二)绘制系统流程图本系统首先需要用户的身份进行识别,只有合法的用户才能进入系统;否则将无法进入系统。进入系统后,首先打开系统主窗体,在系统首页的菜单栏或者功能区可以选择各种导航链接来进行各种操作。由于不同权限的用户对于系统有不同的要求,下面以功能最多的管理员为例,其流程图为。图书信息管理读者信息管理操作员信息管理图书借阅管理管理员用例图(三)系统演示运行系统,首先将图书馆管理系统登录界面,在用户名输入框输入用户名信息,在密码输入框中输入信息,单击“登录”按钮登录系统,打开系统主界面。系统登录界面系统主界面身份识别录入图书信息管理操作员信息管理是否为合法用户主窗体读者信息管理图书借阅管理否是修改删除添加修改删除添加修改(四)系统开发环境图书馆管理系统的具体开发环境要求(1)系统开发平台:MyEclipse6.5。(2)数据库管理系统软件:SQLServer2000。(3)运行平台:Windows2000/WindowsXP/Windows2003。(4)Java开发包:JDK1.6。(5)分辨率:800*600以上(6)GUI开发包:Swing。(五)文件夹组织机构在编写代码之前,首先需要将系统中可能用到的文件夹创建好,这样可以方便系统开发工作,同时还可以规范的整体构建。本系统文件夹组织结构图。文件夹组织结构图四数据库分析与设计(一)数据库分析在开发图书馆系统时,考虑到图书量大,数据维护大的特点,决定采用SQLServer2000作为数据库管理系统。在SQLServer中新增一个数据库,其数据库名为TSGL。数据库中一共包含5张用户表,采用储存不同的信息。(二)数据库概念设计本系统一共设计规划出5个实体,分别是图书信息类别实体、图书信息实体、读者信息实体、操作员实体、图书借阅实体。图书的类别有很多,例如计算机类,外语类、经管类等。因此可以建立一个图书类别表,专门来保存图书的类别信息。图书类别信息实体E-R图。对于图书馆来说,最重要就是要管理其下的所有书籍,所有需要建立一个图书信息表,用来保存所有图书的信息,图书实体E-R图为:图书类别信息表TSLB类别编号类别名图书类别信息E-R图要想在图书馆借书首先需要进行登记,领取读书卡后才能借书。所以需要建立一个读者信息表来保存图书馆的所有读者的登记信息。读者信息实体E-R图图书馆里一般有一个以上的系统操作员,需要建立一个操作员信息表,用来保存操作员的身份信息。操作员信息实体E-R图图书信息实体E–R图图书信息表TSXX图书编号图书类别图书名称作者图书价格译者出版社出版日期备注读者信息表DZXX读者编号读者姓名最大借书量职业读者信息实体E-R图图书馆最大的功能就是能够借书,这时需要建立一个图书借阅信息表,用来保存读者的借书信息,例如读者编号、书籍编号等。图书借阅信息实体E-R图(三)数据库逻辑结构设计根据设计好的实体E-R图创建数据库的逻辑结构,数据库各表的结构图书类别表用来储存所有的图书类别信息,包括图书类别编号和图书类别名称2个字段。图书类别表字段名数据类型是否主键描述lbID文本(char)是图书类别编号lbName文本(char)是图书类别名称操作员信息表XTDL操作员编号用户名密码操作员信息实体E-R图图书借阅信息实体E-R图罚款金额是否归还图书借阅信息表TSJY书籍编号读者编号借书日期归还日期归还期限图书信息表用来储存所有的图书信息,包括图书编号,图书类别、图书名称、作者、译者、出版社、出版日期、书籍价格以及备注9个字段。图书信息表字段名数据类型是否主键描述BookID文本(varchar)是图书编号tslb整数(int)否(外键)类编编号bookname文本(varchar)否图书名称writer文本(varchar)否作者yz文本(varchar)否译者publisher文本(varchar)否出版社date日期时间(datetime)否出版日期price金钱货币(money)否书籍价格bz文本(varchar)否备注读者信息表用来储存所有的读者信息,包括读者编号、读者姓名、最大借书量以及职业4个字段。读者信息表字段名数据类型是否主键描述ReadID文本(varchar)是读者编号name文本(varchar)否姓名maxNum文本(varchar)否最大借书量zy文本(varchar)否职业操作员信息表用来保存操作员信息,包括操作员编号、用户名以及登陆密码3个字段。操作员信息表字段名数据类型是否主键描述id整数(int)是(自动递增)操作员编号name文本(varchar)否用户名password文本(varchar)否密码图书借阅信息表用来保存所有图书的借阅信息,包括借阅编号、图书编号、操作员编号、读者编号、借书日期以、归还日期、是否归还、罚款金额以及归还期限9个字段。图书借阅信息表字段名数据类型是否主键描述id整数(int)是(自动递增)借阅编号BookID文本(varchar)否(外键)图书编号czybh整数(int)否(外键)操作员编号ReadID文本(varchar)否(外键)读者编号jsDate日期时间(datetime)否借阅日期ghDate日期时间(datetime)否归还日期fkje金钱(money)否罚款金额ghqx日期时间(datatime)否归还期限Shgh文本(varchar)否是否归还五系统登录模块对于图书馆管理系统而言,不是所有的用户都是可以使用的,所有需要添加一个登录模块。通过该模块来说对用户的合法性进行判断,只有合法的用户才能进入到系统。登录模块的运行结果如图:系统登录界面(一)新建一个类Xtdl_1,该类继承了JFrame,用来显示登录窗体。在该窗体中需要使用五类控件,分别是JLabel、JTextField、JPasswordField、ImageIcon以及JButton。其中ImageIcon控件用来显示顶部的图片;用JLabel用来显示标签文本;JTextField用来接收用户名输入信息;JPasswordField用来接收密码输入信息;JButton用来创建登录和退出按钮。开发登录代码如下:packagextdl;importjava.awt.*;importjava.awt.event.*;importjava.sql.*;importjavax.swing.*;importjavax.swing.text.*;importzjm.Zjm;publicclassXtdl_1extendsJFrame{JPanelpan;JTextFieldt1;JPasswordFieldtf1;JButtonjb1,jb2;ImageIconii;JLabellab1,lab2,lab3;Zjmframe1;Stringa;publicstaticvoidmain(Stringargv[]){Xtdl_1xt=newXtdl_1();}publicXtdl_1(){pan=newJPanel();lab2=newJLabel(帐号:);lab3=newJLabel(密码:);t1=newJTextField();t1.setDocument(newJTextFieldLimit(12));tf1=newJPasswordField(20);tf1.setDocument(newJTextFieldLimit(25));tf1.addKeyListener(newKeyAdapter(){publicvoidkeyPressed(finalKeyEvente){//TODOAuto-generatedmethodstubif(e.getKeyCode()==10)jb1.doClick();//相应回车事件}});jb1=newJButton(登录);jb1.addActionListener(newjava.awt.event.ActionListener(){publicvoidactionPerformed(java.awt.event.ActionEvente){PreparedStatementps=null;Connectionct=null;ResultSetrs=null;Statementsm=null;Stringmyckstr=t1.getText();Stringcheckstr=tf1.getText();Connectioncon=null;try{Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);con=DriverManager.getConnection(jdbc:microsoft:sqlserver://127.0.0.1:1433;databaseName=TSGL,sa,886588);sm=con.createStatement();rs=sm.executeQuery(selectidfromXTDLwhereid='+myckstr+');if(rs.next()){sm=con.createStatement();rs=sm.executeQuery(selectpasswordfromXTDLwherepassword='

1 / 20
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功