1、 课程设计报告课程设计报告 课程名称: 面向对象程序设计课程设计 课程设计题目: 图书信息管理系统 系: 数学与计算科学系 专 业: 信息与计算科学 年级、班: XXX 姓 名: XXX 学 号: XXX 指导教师: XXX 职 称: XXX 2011 年 6 月 图书信息管理系统图书信息管理系统 课题说明课题说明: 自我评分自我评分:88 编写一个 Java 图书信息管理系统,设计一个图形界面,能够很轻松的对图 书信息进行管理,系统与数据库(Oracle9i)相连接,使得数据比较安全并且容 易操作,对图书信息的修改,添加,删除都变得很简单。每一条图书信息包括图 书编号,书名,作者,出版社,出
2、版日期,图书简介和图书类别。并且本系统要 实现图书管理系统的一些基本功能: 图书所有信息的查看功能 图书信息的录入功能 图书信息的查找功能 图书信息的修改功能 图书信息的删除功能 图书管理系统安全退出功能 其中图书信息的查找功能又分为:1、按书名精确查找。2、按书名模糊查找。 而对于图书信息的查找和图书所有信息的查看, 会以表格的方式在图形界面中显 示出来。 程序设计思路:程序设计思路: 该图书管理系统要求对一系列完整的图书信息进行处理, 即包括录入, 查看, 修改,删除等。考虑到程序系统的实用性,编写了图形界面,并且与数据库相连 接,在保证数据安全的前提下,大大简化了对数据的操作。 首先应该
3、与数据库建立连接,先在电脑上创建好 ODBC 数据源。 然后使用 JDBC-ODBC 驱动来访问 ODBC 数据源的 Java 程序。 做好这些工作之后就要在数据库中建立名为 book_info 的表: 名称 数据类型 大小 可否为空 默认值 BNO(编号) Varchar2 8 否 null BNAME(书名) Varchar2 40 否 null Auther(作者) Varchar2 20 否 null B_adress(出版社) Varchar2 50 可以 null B_date(出版日期) Varchar2 12 可以 null B_info(简介) Varchar2 100 可以
4、 null B_kind(类别) Varchar2 30 可以 null 程序包括 3 个类:程序入口 Book_DBA 类,数据显示的图形界面 Table 类, 和包括了各种操作数据的方法类 Book_Menu类,Book_Menu类包含的六个方法 void creat(),ResultSet display(),ResultSet Find(),void delete(), void change(),void End()分别实现对图书信息的录入、查看所有数据、查找、删除、 修改、退出功能的实现。 如果选择查看所有按钮, 则触发事件里调用 display()函数, display()函数的
5、返回 类型是 ResultSet 结果集,它携带了执行数据库查询book_info 表中所有信息的结果。 然后再调用图形界面 Table,将结果以二维表格的形势显示出来。 选择查询按钮,就要输入要查询图书名的相关信息,而查询提供了两种查询 方式,如果要模糊查询,则只需输入书名的关键字,如果选择精确查询则需要输 入完整的书名。然后调用Find(String find)在book_info 表中查找相应信息,也 以二维表格的形势显示出来。 选择插入按钮,则需要输入要插入的图书编号,在按钮触发的事件里调用 creat() 函数。然后根据提示输入图书的相应信息,把新输入的图书插入到book_info
6、表中。 选择修改按钮, 在按钮触发事件里调用change()函数,则需要输入要修改的 已有图书编号,然后输入修改的图书信息。把修改的信息覆盖原有 book_info 表 中需要修改的信息。 选择删除按钮,则按钮触发事件里调用delete()函数,delete()函数里需要 输入要删除的已有图书编号,delete()函数再在book_info 表中删除输入的编号对应 的那条信息。 选择退出按钮,则按钮触发事件里调用End()函数,End()函数里有 System.exit(0)语句结束程序。 因为管理系统的图形界面用到了图片,所以程序执行时也必须将图片放入文件夹中。 源代码及注释:源代码及注释: Book_DBA 类: package books; import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.IOException; import java.sql.Connection; import