1、学校代码:10410 序 号:1174本 科 毕 业 论 文谁有个人图书管理系统源代码JAVA版本_baidu知道 1个回复 - 最新回复: 6月19日最好答案: .net 题目:基于JAVA学校图书馆管理系统设计和实现 学 院:计算机和信息工程学院姓 名:陈 操 学 号:1174 专 业:计算机科学和技术 年 级:计科051班 指导老师:胡亚平老师 二00九 年 五 月摘 要伴随计算机及网络技术飞速发展,Internet/Intranet应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息自动化作用也越来越大。从而使我们从繁杂事务中解放出来,提升了我们工作效率。现在学校图书馆借阅工
2、作部分还是手工管理,工作效率很低,而且不能立即了解图书种类和学生们比较需求图书等,不能愈加好适应该前学生借阅要求。手工管理还存在这很多弊端,因为不可避免人为原因,造成数据遗漏、误报。计算机信息化管理有着储存量大,速度快等很多优点,提供给我们处理信息立即快捷,所以我们利用计算机提供给我们信息对学生们借阅过程形成一整套动态管理。本系统将会包含到图书馆日常管理工作基础常见细节,诸如新图书入库登记,图书馆全部书籍分类管理,图书查询,图书借阅、退还手续登记,费旧图书清理撤消等,本系统所要实现这些功效基础上涵盖了图书馆日常管理工作,基础能够满足校园图书馆工作人员管理需要。在对本系统具体开发过程当中,将采取
3、Java语言进行开发,以Access实现后台数据库,本系统是完全基于图形化用户界面(GUI)单机版本。【关键字】信息化 软件工程 软件生命周期 图形化用户界面AbstractThe full name of our System is: The Management Information System of Campuss Library. At present, the computer technology is developing ever-growing, and the campuss information construction also have pushing on,
4、by contrast, the method of management in many university library is still by man, the libraryworkers must face to the large number of books, and also face to fall into the trouble. Actually, the work can be done by the computer which have a management information system. Then the heavy work will not
5、 be done by people, the libraryworkers can use computer to manage the books, and the everyday work will be easy.This is the goal which our system want to achieve finally.The principle of development to our system will be following with Software Engineering, we use the traditional model which be call
6、ed Waterfall, and the course of development will be divided into six stage. We will develop the system in sequence.Our system contains many operations about librarys everyday work, such as Register New Books, Classify Books according to their subjects, Find Books, Dispose old books, and so on, our s
7、ystem can finish all of the work, and can meet the requirements of the librarysworkers.During the development of our system, we use the tool of JAVA to develop it, our system is on the basis of the Access Database.【KeyWords】Management Information System, Software Engineering, Ja目 录一 引论1(一)问题定义1(二) 可
8、行性分析2(1) 技术可行性2(2) 经济可行性3二 需求分析3数据库需求分析3(1) 数据流图4(2) 数据库逻辑结构设计5(3) 数据库概念结构设计6三 系统设计7(一)总体设计7(二)具体设计8(1)各个模块介绍8(2)步骤图9(3)数据字典10(4)代码实现11四 总 结21五 致 谢22六 参考文件23 一 引论(一)问题定义首先,图书馆管理直接关系到我们大学生怎样愈加好使用图书,更充足利用现有资源学习,提升本身素质。针对当今大学图书馆藏书越来越多,学生借书越来越频繁,图书管理较为繁琐,图书馆管理工作人员付出工作时间越来越多,得到效率却很低这个现实状况。为提升工作效率,减轻图书馆工作
9、人员工作负担,决定开发学校图书馆管理系统软件,以帮助愈加好实现图书馆管理,让我们能更便捷借阅图书,让老师能花最少时间办理好借阅图书手续。 开发此图书馆管理系统软件,以供图书馆工作人员管理使用及学生和老师查询或借书使用,方便操作者随时添加、查询、修改等。为了我们提升软件开发能力,学习JAVA编程技巧,提升工作设计思想,经过此次软件工程开发,开发人员和指导老师,能从中学习知识吸收经验,在技术和软件思想上同时得到锻炼和提升,从而使总体水升到一个新高度。开发此图书馆管理系统软件,也是对实现数字化图书馆管理支持,现今各大学普遍存在着一个现象,图书借阅手续全部是由专门老师来实现办理,每当借阅高峰期时,排队
10、借书场面屡见不鲜,这么即花费时间又使原本不太大借书大厅拥挤不堪。图书馆管理系统实现,能够着眼于数字化借阅,简化学生图书查询步骤,简化图书外借登记手续,即提升借阅效率又可实现图书借阅完整进出统计,确保图书合理使用,让广大师生受益。 (二) 可行性分析(1) 技术可行性图书借阅系统建立,需要进行用户需求调查和分析,以确定系统目标,提出处理问题具体方案,这是系统建设关键步骤。要想使学生能够有效借阅,功效上对系统要求是全方面。所以对用户需求可分为三个方面:首先是图书管理人员对需要进行图书借阅同学进行信息注册,取得借书证;二方面是学生经过计算机进行图书浏览;三方面是学生经过计算机进行图书借阅。这三个方面
11、形成了图书借阅一个工作整体,利用计算机自动化处理,可方便快捷地共享信息、交流信息,高效地协同工作。在软硬件方面对系统需求,软件要求易学,界面友好,轻易掌握,能够很简单方便进行图书借阅信息管理。硬件配置要求不能太高,这么能够很好适应该前学校图书馆借阅。图书馆长久人工管理工作所投入人力物力财力是相当之多,本系统建设成功,将在这多个方面大大节省资源,更关键是,系统带来轻松、便捷,使图书馆日常管理工作不再那么烦琐。从个人价值上看,本系统开发成功亦是对本人长久学习结果一个检验和一次实践,在个人能力水平上得到了很好锻炼和提升,其价值也是显著。因为本系统管理对象单一,全部是校图书馆里书,且每个数据内容含有较
12、强关联性,包含计算过程不是很复杂。所以,比较适合于采取数据库管理。且学校用于图书馆管理全部是个人计算机,在存放量、速度方面全部能满足数据库运行要求。在技术难度方面,因为有指导老师指导和相关参考文件,尤其是网上资料,尤其是参考其它程序功效,所以完全能够实现。本系统设计是在Windows XP汉字版操作系统环境下,使用 Java汉字版开发成功。数据库是MIS中关键支持技术,在MIS开发过程中,怎样选择数据库管理是一个关键问题,现在,数据库产品较多,每种产品全部含有各自特点和适用范围,所以,在选择数据库时,应考虑数据库应用特点及适用范围,本系统所使用后台数据库是Access数据库。本系统选择开发语言
13、介绍以下:选择了美国SUN企业推出Java开发工具。Java 是第一个全方面支持面向对象程序设计数据库语言工具。Java关键特点有:1、语言是简单、小型、结构中性2、强大数据库开发功效3、扩大了对SQL语言支持4、是面向对象、高性能、多线程5、是分布式、面向网络6、含有平台无关性7、语言含有可移植性、是动态(2) 经济可行性此系统是由在校大学生开发学校图书馆管理信息系统。此系统在开发方法上对系统需求,因为学校图书馆借阅是一个无商业利益,所以系统设计开发周期要短,在短时间内完成,降低开发成本,提升开发效率,方便、简单、实用是作为系统开发指导思想。本系统完全能够在校园图书馆管理工作中发挥关键作用,
14、而作为个人,能在软件开发能力方面得到锻炼和提升也是十分关键,本系统在此不重视担何社会经济目标。二 需求分析设计数据库系统时,应该充足了解用户各方面需求,包含现有和未来可能增加需求,数据库设计通常包含以下多个步骤:1、数据库需求分析2、数据库概念结构设计3、数据库逻辑结构设计数据库需求分析用户需求具体表现在多种信息提供,保留,更新和查询。这就要求数据库结构能充足满足多种信息输入和输出。在仔细分析调查相关图书馆管理信息需求基础上设计出图所表示数据步骤。(1) 数据流图(1)、顶 层 数 据 流 图 查 询图书名/号图书库图书名/号 借 书注册信息借书证学生注册图书名/号学生库图书名/号 还 书 学
15、 生借 书 证 图3-1 数据流图(2)、0层数据流图毕业生借书证注销借书证借书库将借书证设置为借书状态可借书 学生信息是否有效有 效图书名/号图书名/号图书名/号借书证无效办理借书证有效还书库 可还书目前日期 图3-2 数据流图针对图书馆管理系统需求,经过对图书馆管理工作过程内容和数据步骤分析,设计出以下数据项、图书入库信息,包含数据项有:图书编号、书名、图书类别、出版日期、出版社名称、作者、定价、入库总数。学生信息,包含数据项有:学生学号、姓名、性别、系别、班级、图书查询信息,包含数据项有:图书编号、书名、图书类别、出版日期、出版社名称、作者、定价、入库总数。、借书信息,包含数据项有:图书
16、编号、书名、学生学号、姓名、系别、班级、是否归还。(2) 数据库逻辑结构设计图书馆管理系统中数据库各个表格设计结果以下:(1)、图书入库信息表列名数据类型说明BookNoChar图书编号BookNameText书名BookClassText图书类别BookPubText出版社AuthorText作者BookTotalInt入库总数PriceCurrency图书定价IsorinBoolean是否在书库中标志BookbirthDate图书入库日期BookdemoText图书简单介绍 表3-1 图书入库信息表(2)、学生信息表列名数据类型说明StuNOInt学生学号,唯一StuNaneChar学生姓
17、名StuSexBoolean性别StuSpecialText学生系别StuClassChar学生所在班级 表3-2学生信息表(3)、用户信息表列名数据类型说明UserNameChar用户姓名PasswordChar用户密码UserTypeChar用户类型 表3-3 用户信息表(4)、图书信息表列名数据类型说明BookNOInt图书编号BookNameText图书名称BookTotalInt剩下库存量BookDateDate借书日期ReaderNoInt图书证号码 表3-4图书信息表(3) 数据库概念结构设计得到上面数据项就能够设计出以下多种实体和它们关系。设计计划出实体有:图书信息实体、学生信
18、息实体、管理员信息实体。E-R图以下:学生姓名学生学号系别班级性别借图书书名入库总数作者出版社名称出版日期定价图书类别图书编号办理管理员姓名编号性别 图3-3 E-R图三 系统设计(一)总体设计本课题设计在充足进行用户需求分析基础上把系统划分为九个子模块:用户登陆、学生注册、图书入库、图书查询、图书删除、图书借阅、办理登记、借书证注销、用户退出。这九个模块之间,紧密结合,共享信息资源,形成一个完美学校图书馆借阅管理处理方案。图4-1图书馆管理信息系统图书删除图书查询图书入库图书借阅办理登记借书证注销用户退出用户登陆用户注册读者还书图4-1 系统功效结构图(二)具体设计(1)各个模块介绍1、 学
19、生注册:工作人员经过本系统对学生进行信息注册,发放借书证;2、 用户登陆:工作人员用管理员用户登陆,学生用一般用户登陆;3、 图书入库:工作人员经过本系统输入图书信息;4、 图书删除:工作人员经过此模块删除无用图书信息;5、 图书查询:学生们经过此模块来查询自己所需要图书;6、 读者借书:学生经过此模块来完成借阅图书;7、 读者还书:学生经过此模块来完成退还图书;8、 办理登记:图书管理人员经过此模块来完成借书证办理;9、 借书证注销:图书管理人员经过此模块来完成借书证注销;10、用户退出:退出此系统。(2)步骤图 start 学生注册填写注册表 图书入库 学生库 图书信息录入发放借书证N 借
20、书 还书 图书信息管理Y输入图书名/号 图书库此书是否存在NY正常借书,并将借书证设置为借书状态 end 图5-1 系统步骤图(3)数据字典(1)、名字:注册信息别名: 描述:定义:注册信息=学生学号+ 系+级+班+姓名 位置:学生信息表(2)、名字:图书别名:图书信息描述:标识图书部分相关信息定义:图书信息=书名+作者+出版社名+出版日期+图书编号+图书类别+入库总数+定价位置:图书信息表(3)、名字:入库总数别名:描述:图书管所买进图书总数定义:入库总数=1数字100位置:图书信息表(4)、名字:剩下库存量别名:描述:在书被借出时,图书库里所剩图书总数定义:剩下库存量=1数字100位置:图
21、书信息表(5)、名字:图书证号码别名:借书证编号描述:唯一标识借书证关键字定义:图书证号码=1数字8位置:图书信息表(6)、名字:用户姓名别名:用户名描述:用户登录名定义:用户姓名=字母字符+字母数字串位置:用户信息表(7)、名字:图书编号别名:ISBN描述:图书条形码定义:图书编号=字符串+字母数字串 字母数字串=0字母或数字9位置:图书信息表(8)、名字:学生学号别名:学号描述:唯一标识学生关键字定义:学生学号=1数字8位置:学生信息表(4)代码实现1、系统默认界面2、系统登陆界面部分代码以下:import java.awt.BorderLayout;import java.awt.Flo
22、wLayout;import java.awt.GridLayout;import javax.swing.JButton;import javax.swing.JComboBox;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;public class 登录 JLabel l1=new JLabel(用户名:);JLabel l2=new JLabel(密 码:);JLabel l3=new JLabel(请选择用户类型:);JButton b1=new JButton(确定)
23、;JButton b2=new JButton(取消);JButton b3=new JButton(新用户注册);JTextField t1,t2;t1.setText();t1.setEditable(true);t2.setEditable(true);t2.setText();t2.setEchoChar(*);JComboBox ch;ch.add(-);ch.add(系统管理员);ch.add(一般用户);JPanel p=new JPanel(new BorderLayout();JPanel g=new JPanel(new GridLayout(4,1);JPanel j=n
24、ew JPanel(new FlowLayout();j.add(b1);j.add(b2);j.add(b3);p.add(j,BorderLayout.SOUTH); public Login() JLabel l1=new JLabel(用户名:); JLabel l2=new JLabel(密 码:); JLabel l3=new JLabel(请选择用户类型:); JButton b1=new JButton(确定); JButton b2=new JButton(取消); JButton b3=new JButton(新用户注册); t1.setText(); t1.setEdit
25、able(false); t2.setEditable(false); t2.setText(); t2.setEchoChar(*); ch.add(-); ch.add(系统管理员); ch.add(一般用户); JPanel p=new JPanel(new BorderLayout(); JPanel g=new JPanel(new GridLayout(4,1); JPanel j=new JPanel(new FlowLayout(); j.add(b1); j.add(b2); j.add(b3); p.add(j,BorderLayout.SOUTH);3、登陆后界面4、图书
26、录入界面部分代码:public InputBook() JLabel l1=new JLabel(图书编号:); JLabel l2=new JLabel(图书名称:); JLabel l3=new JLabel(图书类别:); JLabel l4=new JLabel(图书出版日期:); JLabel l5=new JLabel(出版社名称:); JLabel l6=new JLabel(图书入库总数:); JButton b1=new JButton(入库登记); JButton b2=new JButton(重 置); ch.add(-); ch.add(计算机类); ch.add(医学
27、类); ch.add(农业类); ch.add(文学类); ch.add(工程类); Container c=f.getContentPane(); c.setLayout(new BorderLayout(); JPanel p=new JPanel(new BorderLayout(); JPanel g=new JPanel(new GridLayout(7,1); JPanel j=new JPanel(new FlowLayout();5、图书查询界面部分代码:try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(ClassNo
28、tFoundException e) System.out.println(SQLException:+e.getMessage(); try Connection conn=DriverManager.getConnection(jdbc:odbc:Library); Statement stmt=conn.createStatement(); ResultSet rs=stmt.executeQuery(select * from book); while(rs.next() if(t1.getText().equals(rs.getString(BookNo) t2.setText(rs
29、.getString(BookName); t3.setText(rs.getString(BookBirth); t4.setText(rs.getString(BookTotal); t5.setText(); else if(t1.getText().equals() JOptionPane.showMessageDialog(null,请输入您要查找图书!, 警告,JOptionPane.WARNING_MESSAGE); break; rs.close(); stmt.close(); conn.close(); catch(SQLException ex) JOptionPane.
30、showMessageDialog(null,ex.getMessage(), 警告,JOptionPane.WARNING_MESSAGE); 6、图书删除界面部分代码:/删除图书按钮事件 bt2.addActionListener(new ActionListener() public void actionPerformed(ActionEvent E) tryClass.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(ClassNotFoundException e)System.out.println(SQLException: +e.get
31、Message(); tryif(t1.getText().equals() JOptionPane.showMessageDialog(null,删除失败!请输入您要删除图书, 提醒信息,JOptionPane.INFORMATION_MESSAGE);elseConnection conn = DriverManager.getConnection(jdbc:odbc:Library);Statement stmt = conn.createStatement();if(JOptionPane.showConfirmDialog(null,单击是删除该统计,单击否取消该操作!,警告,JOp
32、tionPane.YES_NO_OPTION,JOptionPane.WARNING_MESSAGE)=JOptionPane.YES_OPTION)String sql = delete from book where BookNo=+t1.getText()+;stmt.executeUpdate(sql);JOptionPane.showMessageDialog(null,该条统计已被删除成功!, 提醒信息,JOptionPane.INFORMATION_MESSAGE);stmt.close();conn.close();7、办理图书证界面部分代码:/登记按钮事件 b1.addAct
33、ionListener(new ActionListener() public void actionPerformed(ActionEvent e) try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(ClassNotFoundException ex) System.out.println(SQLException:+ex.getMessage(); try if(t1.getText().equals()|t2.getText().equals()|t4.getText().equals()|t5.getText().equals
34、()|t6.getText().equals() JOptionPane.showMessageDialog(null,请输完该学生完整信息!, 警告,JOptionPane.WARNING_MESSAGE); else Connection conn=DriverManager.getConnection(jdbc:odbc:Library); Statement stmt=conn.createStatement(); String sqlstr=insert into student values(+t1.getText()+,+t2.getText()+,+gettext()+,+t4
35、.getText()+,+t5.getText()+,+t6.getText()+); stmt.executeUpdate(sqlstr); stmt.close(); conn.close(); JOptionPane.showMessageDialog(null,注册登记办理成功!,提醒信息,JOptionPane.INFORMATION_MESSAGE); 8、借阅管理界面部分代码: public ReadBook() JLabel l1=new JLabel(请输入借阅图书学生学号:); JLabel l2=new JLabel(请输入退还图书学生学号:); JButton b1=n
36、ew JButton(借 书); JButton b2=new JButton(还 书); Container c=f.getContentPane(); c.setLayout(new BorderLayout(); JPanel p=new JPanel(new BorderLayout(); JPanel g=new JPanel(new GridLayout(2,1); JPanel p1=new JPanel(new FlowLayout(); JPanel p2=new JPanel(new FlowLayout();9、借阅管理界面部分代码:bt.addActionListene
37、r(new ActionListener() public void actionPerformed(ActionEvent E) tryClass.forName(sun.jdbc.odbc.JdbcOdbcDriver);catch(ClassNotFoundException e)System.out.println(SQLException: +e.getMessage();tryif(t.getText().equals()JOptionPane.showMessageDialog(null,删除失败!请输入您要注销学生学号!, 提醒信息,JOptionPane.INFORMATIO
38、N_MESSAGE);elseConnection conn = DriverManager.getConnection(jdbc:odbc:Library);Statement stmt = conn.createStatement();if(JOptionPane.showConfirmDialog(null,单击是注销该统计,单击否取消该操作!,警告,JOptionPane.YES_NO_OPTION,JOptionPane.WARNING_MESSAGE)=JOptionPane.YES_OPTION)String sql = delete from student where Stu
39、No=+t.getText()+;stmt.executeUpdate(sql);JOptionPane.showMessageDialog(null,该学生借阅证注销成功!, 提醒信息,JOptionPane.INFORMATION_MESSAGE);f.setVisible(false);stmt.close();conn.close();10、菜单界面10、制作人信息界面部分代码:JLabel l=new JLabel(欢迎使用校园图书馆管理系统,JLabel.CENTER); l.setForeground(Color.red); l.setFont(new Font(华文彩云,Font.PLAIN,30); JLabel l1=new JLabel(制作人:陈操,JLa
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100