图书信息管理系统说明书【精华版】_第1页
图书信息管理系统说明书【精华版】_第2页
图书信息管理系统说明书【精华版】_第3页
图书信息管理系统说明书【精华版】_第4页
图书信息管理系统说明书【精华版】_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

I 实践教学实践教学 兰州理工大学兰州理工大学 计算机与通信学院 2012 年秋季学期 Java 课程设计课程设计 题题 目 目 图书信息管理系统 专业班级 专业班级 软件基地 1 班 姓姓 名 名 学学 号 号 指导教师 指导教师 成成 绩 绩 II 摘摘 要要 本软件从工大现有图书管理平台得到灵感 分别从读者和管理员的角度 进行了分析和设计 最终实现了该图书信息系统管理的多种功能 主要包括 图书信息添加 图书信息修改与删除 图书类别添加 图书类别修改 读者 信息添加修改 用户信息添加修改等功能 关键词关键词 图书信息 管理系统 java 语言 面向对象 界面设计 I 目目 录录 摘 要 II 序 言 1 第一章 分析与设计 2 第二章 详细设计 4 第三章 系统测试 10 第四章 软件使用说明书 14 设计总结 16 参考文献 17 致 谢 18 序序 言言 工大图书信息管理系统是智能移动平台开发实验室专为兰州理工大学图 书管理开发的一款管理软件 软件界面清新自然 美观大方 参考工大现有 图书管理平台得到灵感 分别从读者和管理员的角度进行了分析和设计 最 终实现了图书信息系统管理的功能 主要包括 图书信息添加 图书信息修 改与删除 图书类别添加 图书类别修改 读者信息添加修改 用户信息添 加修改等功能 第一章第一章 分析与设计分析与设计 参考工大现有图书管理平台得到灵感 分别从读者和管理员的角度进 行了分析和设计 首先在程序功能上 主要包括图书信息添加 图书信息修 改与删除 图书类别添加 图书类别修改 读者信息添加修改 用户信息添 加修改等功能 他们之间的关系展示在下图所示的程序功能结构图中 程序 从功能上 主要分为基础数据维护和系统数据维护 基础数据维护功能由图 书类别管理 图书信息管理和读者信息管理这三项子功能组成 每项又分为 添加和修改删除 系统数据维护功能包括更改口令和修改用户信息 功能结构图 功能结构图 另外从界面上进行设计 按照要求设计为菜单式工作方式 除菜单栏 外 又增加了工具栏 可视界面美观大方且方便用和使用和查看 界面设计 结构主要由下面的界面设计结构图展示 分两栏 菜单栏中设有程序的全部 功能菜单项 工具栏中设有常用工具的快捷按钮 每个菜单项或按钮对应一 个程序功能的界面 设计结构图 设计结构图 第二章第二章 详细设计详细设计 工程根据结构图建包 分别创建 main iframe methods util 和 model 这五个包 main 包中放置程序主界面及主界面上各菜单项和按钮的监 听事件 Iframe 包中放置所有的子功能界面及界面上的功能实现代码 Methods util 和 model 这三个包中放置的是程序的各方法类 其中 methods 包中只有一个与数据库对接的核心方法类 util 中放置程序的各个公共方法 类 详细的结构如下图工程目录显示 下面主要详细介绍 main 和 iframe 包 中的各个类的设计与实现 main 包中仅包含了一个主界面类和一个主界面上各菜单项和按钮的 监听类 主界面 Library java 构造出主界面的布局及主界面上的菜单项和工 具栏 菜单栏分为基础数据维护 新书订购管理 借阅管理 系统维护和关 于我们这 5 项 每项又分出几个子项 菜单栏中囊括了软件的全部功能 工 具栏内设有 9 个按钮 分别对应 9 个常用的功能界面 可使软件主界面美观 且使用方便 Library java 的核心代码及详细注释展示如下 下面通过构造函数 构造主界面窗体 设置窗口大小 布局 标题等属 性 嵌套主窗体背景 添加菜单栏和工具栏 布局选用 BorderLayout 背 景图片添加到 DESKTOP PANE 中 工具栏和菜单栏加到布局顶部 public Library super setDefaultCloseOperation WindowConstants EXIT ON CLOSE setModalExclusionType ModalExclusionType APPLICATION EXCLUDE setLocationByPlatform true setSize 800 600 setTitle 图书馆管理系统 JMenuBar menuBar createMenu 调用创建菜单栏的方法 setJMenuBar menuBar JToolBar toolBar createToolBar 调用创建工具栏的方法 getContentPane add toolBar BorderLayout NORTH final JLabel label new JLabel label setBounds 0 0 0 0 label setIcon null 窗体背景 DESKTOP PANE addComponentListener new ComponentAdapter public void componentResized final ComponentEvent e Dimension size e getComponent getSize label setSize e getComponent getSize label setText DESKTOP PANE add label new Integer Integer MIN VALUE getContentPane add DESKTOP PANE 工具栏创建方法 用于被构造函数调用创建工具栏 工具栏中添加 9 个 JButton 为每个按钮添加一张图片 所有按钮的监听方法都放在 MenuActions java 中便于管理 并且方便重复代码的编写 private JToolBar createToolBar 创建工具栏的方法 JToolBar toolBar new JToolBar toolBar setFloatable false toolBar setBorder new BevelBorder BevelBorder RAISED JButton bookAddButton new JButton MenuActions BOOK ADD ImageIcon icon new ImageIcon Library class getResource bookAddtb jpg 添加菜单栏图标 bookAddButton setIcon icon bookAddButton setHideActionText true toolBar add bookAddButton 在工具栏中添加图书修改与删除图标 JButton bookModiAndDelButton new JButton MenuActions BOOK MODIFY ImageIcon bookmodiicon CreatecdIcon add bookModiAndDeltb jpg 创建 图标方法 bookModiAndDelButton setIcon bookmodiicon bookModiAndDelButton setHideActionText true toolBar add bookModiAndDelButton JButton bookTypeAddButton new JButton MenuActions BOOKTYPE ADD ImageIcon bookTypeAddicon CreatecdIcon add bookTypeAddtb jpg 创建 图标方法 bookTypeAddButton setIcon bookTypeAddicon bookTypeAddButton setHideActionText true toolBar add bookTypeAddButton 9 个 JButton 的添加方法是基本一样的 这里将其他按钮的添加方法 略去 如果需要完整方法 请到源代码中的相应类的文件中进行查看 return toolBar 菜单栏创建方法 用于被构造函数调用来创建菜单栏 菜单采用多 级菜单嵌套 菜单栏中分 5 个主菜单 分别是基础数据维护 新书订购管理 借阅管理 系统维护和关于我们 基础数据维护又分为读者信息管理 图书 类别管理 图书信息管理和退出系统 读者信息管理分为读者信息添加和读 者信息修改与删除 图书类别管理分为图书类别添加和图书类别修改 图书 信息管理分为图书信息添加和图书修改 新书订购管理分为新书订购和验收 新书 借阅管理分为图书借阅 图书归还和图书搜索 系统维护分为更改口 令和用户管理 其中用户管理又分为用户添加和用户修改与删除 最后是关 于我们 只有关于我们这一个菜单 先将菜单项添入子菜单 子菜单添入主 菜单 再将主菜单按顺序添入菜单栏 每个菜单项的监听方法同样是写在 MenuActions java 中 private JMenuBar createMenu 创建菜单栏的方法 JMenuBar menuBar new JMenuBar JMenu baseMenu new JMenu 初始化基础数据维护菜单 baseMenu setIcon CreatecdIcon add jcsjcd jpg JMenu readerManagerMItem new JMenu 读者信息管理 readerManagerMItem add MenuActions READER ADD readerManagerMItem add MenuActions READER MODIFY JMenu bookTypeManageMItem new JMenu 图书类别管理 bookTypeManageMItem add MenuActions BOOKTYPE ADD bookTypeManageMItem add MenuActions BOOKTYPE MODIFY JMenu menu new JMenu 图书信息管理 menu add MenuActions BOOK ADD menu add MenuActions BOOK MODIFY baseMenu add readerManagerMItem baseMenu add bookTypeManageMItem baseMenu add menu baseMenu addSeparator baseMenu add MenuActions EXIT 这里略去其他几个菜单的相同添加方法 如果需要完整方法 请到源 代码中的相应类的文件中进行查看 menuBar add baseMenu 添加基础数据维护菜单到菜单栏 menuBar add bookOrderMenu 添加新书订购管理菜单到菜单栏 menuBar add borrowManageMenu 添加借阅管理菜单到菜单栏 menuBar add sysManageMenu 添加系统维护菜单到菜单栏 menuBar add aboutMenu 添加关于我们菜单到菜单栏 return menuBar Iframe 包中 16 个类分别对应 16 个功能界面及其监听方法和调用数 据库增删改查的方法 16 项功能分别是系统登录 图书信息添加 图书信息 修改与删除 图书类别添加 图书类别修改 读者信息添加 读者信息修改 与删除 用户信息添加 用户信息修改与删除 新书订购 新书验收 图书 借阅管理 图书归还管理 图书信息查询 更改密码和关于我们 类项太多 这里不再一一给出代码 我们这里取图书信息查询 BookSearchIFrame java 类来详细解释界面实现和与数据库对接的实现 核心代码如下 下面是图书查询构造函数 构造出窗体组件和按钮的功能监听 public BookSearchIFrame super setIconifiable true setClosable true setTitle 图书查询 setBounds 100 100 500 400 setVisible true 前半段就略去了 都是一些窗口组件的构造过程 方法基本一致 下 面主要看两个按钮的添加和触发后的功能 查询按钮点击后 首先获取 JComboBox 中的选项是按书名查询还是按作者查询 然后获取后面文本框中 的字段 最后选择调用 Methods 中的 selectbookmohuwriter 方法还是 selectbookmohu 方法 在 Methods 中写出连接调用数据库的方法 并通过 sql 查询语句将要查询的结果按顺序查询出来 并将查询出的进行处理后返 回当前类 当前类获取到查询结果 并将结果显示在下面的 JScrollPane 中 从而完成了整个图书搜索和排序顺序显示的功能 详细代码如下 final JButton button new JButton button setText 查询 panel 2 1 add button 添加查询按钮监听 button addActionListener new ActionListener public void actionPerformed ActionEvent arg0 String name String choice getSelectedItem if name equals 图书名称 Object results getselect Methods selectbookmohu textField 1 getText table 2 new JTable results booksearch scrollPane 1 setViewportView table 2 else if name equals 图书作者 Object results getselect Methods selectbookmohuwriter textField 1 getText table 2 new JTable results booksearch scrollPane 1 setViewportView table 2 final JButton button 1 new JButton button 1 setText 退出 panel 2 1 add button 1 button 1 addActionListener new CloseActionListener setVisible true final JPanel panel 2 new JPanel tabbedPane addTab 显示图书全部信息 null panel 2 null scrollPane new JScrollPane scrollPane setPreferredSize new Dimension 450 250 panel 2 add scrollPane Object results getselect Methods selectbookserch String booksearch 编号 分类 名称 作者 译者 出版社 出版日期 单价 table 1 new JTable results booksearch scrollPane setViewportView table 1 这里主要取了图书信息查询 BookSearchIFrame java 类来详细解释界 面实现和与数据库对接的实现 其他的 15 个类跟 BookSearchIFrame java 结 构相同 都是先写界面 再写触发事件 然后调用 Methods 中的相应的查询 或修改方法 最后将结果返回调用该方法的类 在该类中将结果显示出来 最后调用 JOptionPane showMessageDialog 方法 显示添加 修改 删除 查询功能的成功 详细程序设计就介绍这么多 更多内容请详细查看源代码 下面介绍系统测试结果和使用说明书 第三章第三章 系统测试系统测试 图书信息修改功能测试 图书类别修改测试 读者信息修改测试 图书查询 通过书名模糊查询 图书查询 通过姓名模糊查询 显示全部图书信息 并按编号排序 第四章第四章 软件使用说明书软件使用说明书 程序登陆界面开始 输入正确的管理员用户名和密码后即可进入主界面 程序主界面由 5 个菜单和 9 个工具按钮组成 个菜单项和按钮的功能即对应各个子 功能界面 各菜单项和功能按钮展示如下 基础数据维护功能菜单 借阅管理菜单 系统维护菜单 最后来张全部窗口集 设计总结设计总结 这次课程设计使我有了如下诸多的收获 巩固和加深了对 Java 的理解 提高综合运用 Java 多方面知识的能力 培养了我选用参考书 查阅手册及文献资料的能力 培养独立思考 深入研 究 分析问题 解决问题的能力 通过实际编译系统的分析设计 编程调试 掌握应用软件的分析方法和工程 设计方法 通过课程设计 培养了我严肃认真的工作作风 逐步建立正确的生产观念 经济观念和全局观念 根据我在实习中遇到得问题 我将在以后的学习过程中注意以下几点 1 认真上好专业实验课 多在实践中锻炼自己 2 写程序的过程中要考虑周到 严密 3 在做设计的时候要有信心 有耐心 切勿浮躁 4 认真的学习课本知识 掌握课本中的知识点 并在此基础上学会灵活 运用 5 在课余时间里多写程序 熟练掌握在调试程序的过程中所遇到的常见 错误 以便能节省调试程序的时间 本次课程设计终于结束了 通过这次课程设计 我加深了对 Java 这门面向对象语言的理解 并能够熟练 地将它们运用到实际操作中 虽然系统的基本功能都已实现 但还是存在一些小 的细节问题尚待解决 我正在做系统的过程中遇到了很多问题 有的是知识存储 不足 有的是考虑不够周全 之所以能够顺利实现基本功功能 离不开老师和同 学的大力相助 事实证明 只靠自己是不能顺利完成一套功能完整的系统的 必 须充分利用团队的力量 开发一套系统 最重要的是细心 并不是一定要做到面面俱到 但也要充分 考虑到客户的需求和现实意义 不管什么系统 只用运用到实际应用中 才具有 先现实意义 所以在准备工作中要正确分析社会需求了解现实应用 画出流程图 把大体框架做好 然后再逐一细化 我们不可能做到面面

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论