图书管理系统设计文档.doc

上传人:仙人指路1688 文档编号:3937582 上传时间:2023-03-28 格式:DOC 页数:17 大小:290.50KB
返回 下载 相关 举报
图书管理系统设计文档.doc_第1页
第1页 / 共17页
图书管理系统设计文档.doc_第2页
第2页 / 共17页
图书管理系统设计文档.doc_第3页
第3页 / 共17页
图书管理系统设计文档.doc_第4页
第4页 / 共17页
图书管理系统设计文档.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《图书管理系统设计文档.doc》由会员分享,可在线阅读,更多相关《图书管理系统设计文档.doc(17页珍藏版)》请在三一办公上搜索。

1、图书管理系统设计报告学生姓名: 指导老师:单承刚摘 要 本课程设计主要解决的是在图书馆中,实现计算机对图书借阅和读者的管理。在课程设计中,系统开发平台为Windows XP,程序设计设计语言采用Java,数据库采用SQL server,程序运行平台为Windows 98/2000/XP。在Java中可以实现的功能有图书管理、新书入库、读者管理、添加读者、系统管理员管理、借书、还书、续借等等。以MS SQL server作为各种信息资料的后台数据库。本系统实现提供图书管理员对图书入库和出库以及图书借阅的管理。程序通过调试运行,初步实现了设计目标,并且经过适当完善后,将可以应用在图书馆前台解决实际

2、问题。关键词 Java程序设计;JDBC;ODBC; JDBC:JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC也是个商标名。ODBC: ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open

3、Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。1 引 言1.1 课程设计的目的前言:图书馆在正常运营中总是面对大量的读者信息、书籍信息以及两者相互作用产生的借书信息、还书信息。因此需要对读者资源、书籍资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利于提高管理效率。1.2 课程设计的意义通过一个图书馆管理信息系统,使图书馆的信息管理工作系统化、规范化、自动化,

4、从而达到提高企业人事管理效率的目的。2 系统功能介绍图书管理系统包括八大模块:图书管理、新书入库、读者管理、添加读者、系统管理员管理、借书、还书、续借等模块。2.1图书管理模块该模块实现图书信息的查找、修改、删除功能。图1-1图1-1 图书管理模块2.2新书入库模块该模块实现新书信息录入功能。图1-2图1-2 新书入库模块2.3读者管理模块该模块实现新书信息录入功能。图1-3图1-3 读者管理模块2.4添加读者模块该模块实现读者信息录入数据库功能。图1-4图1-42.5借书模块该模块实现图书借阅功能。图1-5图1-52.6还书模块该模块实现归还图书功能。图1-6图1-62.7管理员管理模块该模

5、块实现添加删除管理员功能。图1-7图1-7 3数据结构和数据库设计 我们使用的的是MS SQL Sever2000的数据库,它功能强大,简单易用。根据需要,我们建立了数据库(BOOKSDB.MDF),库中有4张物理表。(1) Books表该表用于存储图书信息,如图书id、书名、种类等等。Book表(2) Outbooks表该表用于存储借出图书的日期时间、读者id。Outbooks表(3) Admin表 该表用于存储管理员的姓名、密码。Admin表(4) Users表-该表用于存储读者的信息,如读者id、读者姓名、性别、联系方式等。User表图1 图书管理系统业务流程图图2 图书管理系统数据流程

6、图图3 图书管理系统概念数据模型图4 图书管理系统面向对象模型4. 系统代码设计分析4.1 数据库连接模块public class DBC /数据源 public String url = jdbc:odbc:test; /创建connection对象 public Connection conn; public static DBC only; /创建DBC对象 public static DBC getInstance() if (only = null) return new DBC(); else return only; /创建数据库连接 public void getConnect

7、ion() try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); conn = DriverManager.getConnection(url); catch (SQLException ex) javax.swing.JOptionPane.showMessageDialog(null, ex.getMessage().toString(); catch (ClassNotFoundException ex) javax.swing.JOptionPane.showMessageDialog(null, ex.getMessage().toStri

8、ng(); /数据库查询方法 public ResultSet executeQuery(String sql) ResultSet rs = null; try getConnection(); Statement stmt = conn.createStatement(); rs = stmt.executeQuery(sql); catch (SQLException ex) javax.swing.JOptionPane.showMessageDialog(null, ex.getMessage().toString(); return rs; /更新,插入数据并返回是否成功 publ

9、ic boolean executeUpdate(String sql) getConnection(); int i = 0; try Statement stmt = conn.createStatement(); i = stmt.executeUpdate(sql); stmt.close(); conn.close(); catch (SQLException ex) javax.swing.JOptionPane.showMessageDialog(null, ex.getMessage().toString(); return false; if (i 0) return tru

10、e; else return false; 4.2 借书模块 DBC dbc = DBC.getInstance(); ResultSet rs1=dbc.executeQuery(SELECT * FROM Books WHERE Bid = + Integer.parseInt(txtBid.getText(); ResultSet rs2 = dbc.executeQuery(SELECT * FROM Users WHERE Uid = + Integer.parseInt(txtUid.getText(); int uyue = 0; int bprice = 0; /查询是否有此书

11、信息 try rs1.next(); rs1.getInt(Bprice); rs1.close(); catch (SQLException ex1) javax.swing.JOptionPane.showMessageDialog(this, 库中无此书信息!请重新确认。); return; /查询是否有该读者信息 try rs2.next(); uyue = rs2.getInt(Uyue); rs2.close(); catch (SQLException ex2) javax.swing.JOptionPane.showMessageDialog(this, 无此读者信息!请重新确

12、认。); return; /判断余额是否容许租借本书 if (uyue bprice) javax.swing.JOptionPane.showMessageDialog(this, 该读者余额不足以租借此书!); return; else /更新相关数据并将该书库存量减1 if(Integer.parseInt(txtRenttime.getText() 0) javax.swing.JOptionPane.showMessageDialog(this,时间不能为负数!); return; if (dbc.executeUpdate(INSERT OutBooks VALUES ( + In

13、teger.parseInt(txtBid.getText() + , + Integer.parseInt(txtUid.getText() + , + bprice + ,DEFAULT, + Integer.parseInt(txtRenttime.getText() + ,DEFAULT,DEFAULT) & dbc.executeUpdate( UPDATE Books SET Bsum = Bsum-1 WHERE Bid = + Integer.parseInt(txtBid.getText() javax.swing.JOptionPane.showMessageDialog(

14、this, 借书成功!); else javax.swing.JOptionPane.showMessageDialog(this, 借书失败!请重试。); 参考文献1 刘萌.Java入门与提高实用教程M.中国铁道出版社,2003.92 陈艳峰.Java数据库项目案例导航M.北京:清华大学出版社,2004.83.郑人杰,殷人昆等. 实用软件工程. 北京:清华大学出版社,19974.徐孝凯. 面向对象程序设计实验. 北京:中央广播电视大学出版社,2003 5.邵维忠,杨芙清. 面向对象的系统分析. 北京:清华大学出版社,1998 枣庄学院软件工程课程设计报告图书管理系统叶 嵩李 平张芹芳李 娜 系 计算机科学系 专 业 计算机科学与技术 班 级 学 号 学生姓名 指导教师 课程成绩 完成日期 课程设计成绩评定系 专 业 计算机科学与技术 班 级 学 号 学生姓名 指导教师 课程成绩 完成日期 指导教师对学生在课程设计中的评价评分项目优良中及格不及格课程设计中的创造性成果学生掌握课程内容的程度课程设计完成情况课程设计动手能力文字表达学习态度规范要求课程设计论文的质量指导教师对课程设计的评定意见综合成绩 指导教师签字 2006年 月 日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号