图书管理系统设计文档_第1页
图书管理系统设计文档_第2页
图书管理系统设计文档_第3页
图书管理系统设计文档_第4页
图书管理系统设计文档_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

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 枣庄学院软件工程课程设计报告图书管理系统叶 嵩李 平张芹芳李 娜 系

温馨提示

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

评论

0/150

提交评论