欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    java图书管理系统全程开发设计(共87页).doc

    • 资源ID:27091735       资源大小:356.50KB        全文页数:87页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    java图书管理系统全程开发设计(共87页).doc

    精选优质文档-倾情为你奉上哈尔滨学院软件学院课程设计说明书题目:图书管理系统院(系)软件学院专 业软件工程年 级09-3班姓 名刘立威学 号指导教师谷庆棫、张晓欢职 称2011年 8月 15日目 录专心-专注-专业摘 要随着学校的发展,学生人数日益增多,高校图书馆的管理工作变得烦琐,而传统的人工管理方式已不能满足数量巨大的图书和其借阅信息的管理要求,经详细分析其有如下缺点:l 图书合学生信息不易维护,数量巨大。l 查询不方便,借阅和还书速度过慢。各种信息的记录靠手写,数据容易丢失。 为了弥补上述缺陷,便于图书维护和借阅工作,提高借阅和还书的效率,开发出此管理系统,实现图书管理信息化。关键词:图书 管理 l AbstractWith the development of the school, increasing the number of students, university library management has become cumbersome, and the traditional manual management methods can not meet the huge number of books and information management requirements of its lending, the detailed analysis which has the following disadvantages:l books together is not easy to maintain student information, a huge number.l query convenient, books to borrow and also too slow.Records of all kinds of information by hand, the data easy to lose.    To compensate for these shortcomings, easy maintenance and borrow books work, borrow and return books to improve the efficiency of the development of this management system, library management information.Keywords: Library management第一章 需求分析1.1. 编写目的需求的编写是为了研究图书管理系统软件的开发途径和应用方法。同时它也是进行项目策划、概要设计和详细设计的基础,是维护人员进行内部维护,信息更新,验收和测试的依据。本需求的预期读者是与图书管理系统软件开发有联系的决策人,开发组成人员,扶助开发者,支持本项目的领导和公司人员,软件验证者。1.1.1 背景说明人工管理图书的手续繁索、效率低下给具有强烈时间观念的管理人员带来了诸多不便,学校图书馆缺少一套完善的图书管理软件,为了对图书的管理方便,因此必须开发图书管理系统。随着计算机技术的不断应用和提高,计算机已经深入到社会生活的各个角落。而采用手工管理图书的方法,不仅效率低、易出错、手续繁琐,而且耗费大量的人力。为了满足图书馆管理人员对图书馆书籍,读者资料,借还书等进行高效的管理,在工作人员具备一定的计算机操作能力的前提下,特编此图书管理系统软件以提高图书馆的管理效率。1.2 任务概述1.2.1. 目标建立的图书管理系统,要把图书馆的图书管理、读者管理、图书借阅管理等日常管理工作实行计算机统一管理,以提高工作效率和管理水平。 1.2.1.1 开发意图 a. 为了图书管理系统更完善; b. 为了学校图书馆对图书的管理更方便; c. 为了减轻图书管理人员的工作负担。 1.2.1.2 应用目标 通过本系统软件,能帮助图书馆管理人员利用计算机,快速方便地对图书馆书籍,读者资料,借还书等进行高效的管理。 1.2.1.3 作用及范围 本软件适用于教育界,它是比较完善的系统管理软件,对图书馆的书籍,读者资料,借还书等可以进行方便的管理。1.2.2. 用户的特点本软件的使用对象有学校图书馆的系统管理员(更新维护系统),图书管理人员(办理借阅,归还图书)和读者(查询图书)。备注:会汉语、懂计算机的基本操作就可以利用该软件进行所需操作1.2.3. 假定与约束技术约束:本项目的设计是在Java程序设计语言的条件下进行的,技术设计采用软硬一体化的设计方法。 环境约束:运行该软件所适用的具体设备必须是奔腾4、内存256兆以上的计算机;1.3. 需求规定1、理解需求理解需求是在问题及其最终解决方案之间架设桥梁的第一步。开发者只有和用户充分理解了需求之后才能开始设计系统,否则,对需求定义的任何改进,设计上都必须大量的返工。下面是对系统的终端用户和客户调研后得到的需求规格说明书。(1)在启动系统后,首先是登陆界面,根据用户输入判断用户身份是否合法。合法用户分为普通用户和系统管理员,其中,系统管理员拥有所有权限,而普通用户没有用户管理权限。(2)进入读者信息维护界面,可以对读者信息进行添加、删除、修改和查询操作,并且可以遍历记录。(3)进入图书信息维护界面,可以对图书信息进行添加、删除、修改和查询操作,并且可以遍历记录。(4)进入读者借还书界面,可以实现读者借书、还书和查阅读者借阅记录的功能,并在读者借还书时,对相应数据库数据进行修改。(5)系统客户端运行在Windows平台下,服务器可以运行在Windows或Unix平台下。系统还应该有一个较好的图形用户界面。(6)系统应该有很好的可扩展性。2、需求分析 需求分析是从客户的需求中提取出软件系统能够帮助用户解决的业务问题,通过对用户业务问题的分析,确定系统的功能需求。这个步骤是对理解需求的升华,直接关系到该系统的质量。分析的根本目的是在开发者和提出需求的人之间建立一种理解和沟通机制,因此,系统的需求分析也应该是开发人员和用户或客户一起完成的。<1>系统功能模块划分根据开发者和客户的需求分析后,可以把系统功能分为两个大的个功能模块:(1)读者管理模块 包括:读者登记,查询,借书,还书,删除等功能(2)图书管理模块 包括:图书添加,查询等功能1.4. 时间特性要求在软件方面,响应时间,更新处理时间都比较快且迅速,完全满足用户要求。1.4.1. 灵活性当用户需求,如操作方式,运行环境,结果精度,数据结构于其他软件接口等发生变化时,设计的软件要做适当调整,灵活性非常大。1.5. 输入输出要求查询书目:输入关键字为书名,作者,索引号,按照精确匹配为主,再索引关联字。输出时列出索引到的所有书目信息,具体信息包括内容摘要、目录号、作者信息、书名、价格、流水号、购买日期等。方便读者查找。借阅图书:通过设备识别图书和读者(借阅证)的流水号(条形码),向数据库传送信息,然后在数据库索引图书信息和读者信息是否符合要求,符合要求待图书管理员确认后再更新相关数据,并将这些数据存入借书文件,最后输出显示存储成功;否则报错。1.6. 数据管理能力要求定时整理数据:系统管理员根据市场图书行情定时整理系统数据库,对图书的借阅情况、读者的管理情况、书库的增减等均可有计算机执行,并将运行结果归档。查询库存量:能随时查询书库中图书的库存量,以便准确、及时、方便地为读者提供借阅信息,但不能修改数据,无信息处理权,即可以打印清单、浏览数据等,管理权限由系统管理员掌握和分配。1.7. 故障处理要求a. 内部故障处理 在开发阶段可以随即修改数据库里的相应内容。 b. 外部故障处理 对编辑的程序进行重装载时,第一次装载认为错,修改。第二次运行,在需求调用时出错,有错误提示,重试。c. 本软件可能产生的错误为数据库的错误信息,应由数据库管理员对数据库进行维护。为了确保系统恢复的能力,数据库管理员要定期对数据库进行备份。1.8. 运行环境设定1.8.1. 设备硬件、外部设备(P4微机一台、打印机一台) 运行本软件所要求的硬设备的最小配置:a.       奔腾4代、内存256M;b.     IO设备:显示器、鼠标、键盘; 1.8.2. 支持软件说明为运行本软件所需要的支持软件,如:a.操作系统:Windows98及以上版本b.数据库:MYsql。1.8.3. 接口1.8.3.1 用户接口 本产品的用户一般需要通过终端进行操作,进入主界面后点击相应的窗口,分别进入相对应的界面(如:输入界面、输出界面)。用户对程序的维护,最好要有备份。 1.8.4. 控制本软件是以中文版Windows 98及其以上版本的操作系统来控制软件运行。 第二章 开发工具介绍及数据库设计2.1 系统开发工具简介eclipse-galileoEclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。 Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(Eclipse Foundation)管理。 2003年,Eclipse 3.0选择OSGi服务平台规范为运行时架构。 2007年6月,稳定版3.3发布。2008年6月发布代号为Ganymede的3.4版。2009年7月发布代号为GALILEO的3.5版。 Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C+和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。 Eclipse 最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT 和PDE。目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、Rational Software、Red Hat及Sybase等。Eclipse是一个开发源码项目,它其实是 Visual Age for Java的替代品,其界面跟先前的Visual Age for Java差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。 虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用,但 Eclipse 的目标不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。 基于 Eclipse 的应用程序的突出例子是 IBM 的 WebSphere Studio Workbench,它构成了 IBM Java 开发工具系列的基础。例如,WebSphere Studio Application Developer 添加了对 JSP、servlet、EJB、XML、Web 服务和数据库访问的支持。2.2 系统数据库实现1.表book字段名称数据类型图书名文本图书号文本(主键)单价文本作者文本出版社文本ISBN文本2.表user字段名称数据类型用户名文本(主键)密码文本第三章 概要设计 3.1.1 系统流程图退出图书删除图书概览修改密码图书查询图书入库系统开始失败退出判断成功判断输入密码1. 2. 第四章 详细设计4.1.1设计流图 书籍信息设置读者信息设置 基本信息录入 基本信息录入 数据库 数据库 书籍信息管理读者信息管理读者登记书籍登记 基本信息录入 数据库 基本信息录入 书籍信息管理读者信息管理 数据库 借阅信息录入 读者信息返回 书籍信息返回 借阅信息管理第五章 系统测试运行5.1 测试目的 1.认软件质量,其一方面是确认软件做了所期望的事情,另一方面是确认软件以正确的方式来做这件事情。 2.提供信息,比如提供给开发人员或经理的反馈信息,为风险评估所准备信息。5.2 测试方案 1.知道源代码所以运用白盒测试。每一个语句的功能都进行测试,分批进行从开始一直测试下去,一项一项的测试功能。 5.3 测试内容1 登录界面测试 2登陆后进入主界面.3.进入图书浏览4.图书查询5.图书查询成功6.添加图书7.添加图书后浏览8删除图书9.图书删除成功10.图书删除后浏览11.用户修改密码测试完毕!总 结这次JAVA的项目设计是一次对专业知识的综合应用,扩充和深化。也是理论运用于实际的一次锻炼。通过这次设计,我不仅温习了课上的知识,还深刻体会了项目的设计的基本思想。从中也知道了自己的种种不足。知道了自己在学习中不认真所留下的后果。总之这次项目的设计是我受益匪浅。参考文献1. Y,Daniel Liang著 万波 郑海梅 潘蓉 李娜 译ava语言程序设计基础篇机械工业出版社2008.62.陈明 编著软件工程导论机械工业出版社 2009.103.吴亚峰 索依娜 著30天学通javaWeb项目案例开发电子工业出版社 2009.7附 录源代码package we;/*主界面*/*本类为用户界面*/import .*;import java.sql.*;import java.awt.*;import java.awt.event.*;import java.io.*;import java.util.*;import javax.swing.*;import javax.swing.border.*;import java.util.*;class Book extends JFrame implements ActionListener JButton QueryScore=new JButton("图书查询");JButton QueryXuefen=new JButton("图书入库");JButton jiangfa=new JButton("图书删除");JButton xuanke=new JButton("图书概览");JButton gaiMima=new JButton("修改密码");JMenuBar mb = new JMenuBar();/菜单栏JPanel jp=new JPanel();/用来填放子模块Container cp=getContentPane(); Stringusername;Book() Book(String username)this.username=username;mb.add(QueryScore);mb.add(QueryXuefen);mb.add(jiangfa);mb.add(xuanke);mb.add(gaiMima); cp.add(mb,"North");/ 设置边框 jp.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(Color.blue, 2),null, TitledBorder.CENTER, TitledBorder.TOP);jp.setLayout(new BorderLayout(); JLabel label1 = new JLabel(new ImageIcon("4.jpg");jp.add(label1); /* JLabel JL=new JLabel("<html><font color=#CC00FF size='7'><i>欢迎登陆</i></font>",SwingConstants.CENTER); jp.add(JL,"North");*/JLabel label2 = new JLabel(new ImageIcon("2.jpg");/jp.add(label2,"South");JScrollPane scrollpane=new JScrollPane(jp);cp.add(scrollpane);setTitle("欢迎登陆"); Toolkit kit=Toolkit.getDefaultToolkit();Dimension screen=kit.getScreenSize();int x=screen.width;/*取得显示器窗口的宽度*/int y=screen.height;/*取得显示器窗口的高度*/setSize(x,y); /*让系统窗口平铺整个显示器窗口*/ setSize(600,600); int xcenter=(x-600)/2; int ycenter=(y-600)/2; setLocation(xcenter,ycenter);/*显示在窗口中央*/setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/注册临听器QueryScore.addActionListener(this);QueryXuefen.addActionListener(this);jiangfa.addActionListener(this);xuanke.addActionListener(this);gaiMima.addActionListener(this);public void actionPerformed(ActionEvent e)String cmd=e.getActionCommand();if (cmd.equals("图书查询")new QueryBook();if (cmd.equals("图书入库")new BookIn();if (cmd.equals("图书删除")new RemoveBook();if (cmd.equals("图书概览")new BookBrower().showRecord(); if (cmd.equals("修改密码")new UpdateMima(username);public static void main(Stringargs)new Book("");package we;/*图书概览*/import java.awt.event.*;import javax.swing.*;import java.awt.*;import java.util.*;import java.sql.*;class BookBrower implements ActionListener JFrame f;Container cp;JPanel jpS,jpanelWest;JButton jbt1,jbt2;/按钮,查询、取消、修改JLabel label,L;/标签 /定义文本框JTable table;/用来接收数据库中返回的信息 Object columnName="图书名","图书号","单价","作者","出版社","ISBN码" Object ar =new Object806;String sno;String count="xx" BookBrower() f=new JFrame();cp=f.getContentPane(); / 初始化面板、按钮、标签、文本框jpS=new JPanel(); jpanelWest=new JPanel();/-jbt1=new JButton("确定"); jbt2=new JButton("返回"); /-label=new JLabel("<html><font color=#CC00FF size='4'>图书概览</font>",SwingConstants.CENTER);label.setForeground(Color.blue);L=new JLabel("书库现在共有图书"+count+"本");/- table=new JTable(ar,columnName);/ar存放表中的数据,columnname表示列名JScrollPane scrollpane = new JScrollPane(table);/-/布局,添加控件jpS.add(jbt1);jpS.add(jbt2);JPanel jpanel=new JPanel();jpanel.add(label);JPanel pp4=new JPanel(); JPanel jpE=new JPanel();cp.add(jpanel,"North");JPanel jp=new JPanel();/jp.add(scrollpane);JPanel p=new JPanel();/用来放两个表p.setLayout(new BorderLayout();p.add(L,"North");p.add(scrollpane); cp.add(pp4,"West");cp.add(p,"Center"); cp.add(jpS,"South"); cp.add(jpE,"East");/- Toolkit kit=Toolkit.getDefaultToolkit();Dimension screen=kit.getScreenSize();int x=screen.width;/*取得显示器窗口的宽度*/int y=screen.height;/*取得显示器窗口的高度*/ f.setSize(400,330); int xcenter=(x-350)/2; int ycenter=(y-330)/2; f.setLocation(xcenter,ycenter);/*显示在窗口中央*/ f.setVisible(true); /- jbt1.addActionListener(this);/注册监听器 jbt2.addActionListener(this); /* f.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(0););*/-int i=0; public void showRecord() while(i>=0)ari0=""ari1=""ari2=""ari3=""ari4=""ari5=""i-;i=0;tryClass.forName(Constant.DATABASE_TYPE_MYSQL); catch(ClassNotFoundException e)System.out.println("加载驱动程序失败!");try Connection con=DriverManager.getConnection(Constant.MYSQL_URL,Constant.MYSQL_USERNAME,Constant.MYSQL_PASSWORD); String s="select * from book " Statement sql=con.createStatement(); ResultSet rs=sql.executeQuery(s); while(rs.next() String bname=rs.getString(1);String bno=rs.getString(2);String price=rs.getString(3);String writer=rs.getString(4);String publish=rs.getString(5);String indate=rs.getString(6);ari0=bname;ari1=bno;ari2=price;ari3=writer;ari4=publish;ari5=indate;i+; count=""+i+""L.setText("书库现在共有图书"+count+"本");f.repaint(); con.close(); catch(SQLException g) System.out.println("E Code"+g.getErrorCode(); System.out.println("E M"+g.getMessage(); public void actionPerformed(ActionEvent e) String cmd=e.getActionCommand(); if(cmd.equals("确定") f.hide(); if(cmd.equals("返回") f.hide(); public static void main(String arg) BookBrower a=new BookBrower(); a.showRecord();package we;/*图书入库*/import java.awt.event.*;import javax.swing.*;import java.awt.*;import java.util.*;import java.sql.*;import javax.swing.text.JTextComponent; /extends JFrameclass BookIn implements ActionListener JFrame f3;Container cp;JPanel jp1,jp2,jp3,jp4,jp,jpanelWest;JButton jbt1,jbt2;/按钮:确定、取消、JLabel label;/标签JTextField tf1,tf2,tf3,tf4,tf5,tf6; /定义文本框JLabel label1,label2,label3,label4;String sno; BookIn() f3=new JFrame();cp=f3.getContentPane(); / 初始化面板、按钮、标签、文本框jp1=new JPanel(); jp2=new JPanel();jp3=new JPanel();jp4=new JPanel();jpanelWest=new JPanel();jp=new JPanel();/-jbt1=new JButton("确定"); jbt2=new JButton("取消");/-label=new JLabel("<html><font color=#CC00FF size='4'>图书入库</font>",SwingConstants.CENTER);label.setForeground(Color.blue); /-tf1=new JTextField(20);tf2=new JTextField(20);tf3=new JTextField(20);tf4=new JTextField(20);tf5=new JTextField(20); tf6=new JTextField(20);/-/布局,添加控件jp1.add(jbt1);jp1.add(jbt2);sno=tf4.getText();jp1.add(new JLabel("您好"+sno+"欢迎登陆学生信息系统");JPanel jpanel=n

    注意事项

    本文(java图书管理系统全程开发设计(共87页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开