简单的图书管理系统概述.docx

上传人:wj 文档编号:1949435 上传时间:2023-05-02 格式:DOCX 页数:23 大小:109.47KB
下载 相关 举报
简单的图书管理系统概述.docx_第1页
第1页 / 共23页
简单的图书管理系统概述.docx_第2页
第2页 / 共23页
简单的图书管理系统概述.docx_第3页
第3页 / 共23页
简单的图书管理系统概述.docx_第4页
第4页 / 共23页
简单的图书管理系统概述.docx_第5页
第5页 / 共23页
简单的图书管理系统概述.docx_第6页
第6页 / 共23页
简单的图书管理系统概述.docx_第7页
第7页 / 共23页
简单的图书管理系统概述.docx_第8页
第8页 / 共23页
简单的图书管理系统概述.docx_第9页
第9页 / 共23页
简单的图书管理系统概述.docx_第10页
第10页 / 共23页
简单的图书管理系统概述.docx_第11页
第11页 / 共23页
简单的图书管理系统概述.docx_第12页
第12页 / 共23页
简单的图书管理系统概述.docx_第13页
第13页 / 共23页
简单的图书管理系统概述.docx_第14页
第14页 / 共23页
简单的图书管理系统概述.docx_第15页
第15页 / 共23页
简单的图书管理系统概述.docx_第16页
第16页 / 共23页
简单的图书管理系统概述.docx_第17页
第17页 / 共23页
简单的图书管理系统概述.docx_第18页
第18页 / 共23页
简单的图书管理系统概述.docx_第19页
第19页 / 共23页
简单的图书管理系统概述.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

简单的图书管理系统概述.docx

《简单的图书管理系统概述.docx》由会员分享,可在线阅读,更多相关《简单的图书管理系统概述.docx(23页珍藏版)》请在冰点文库上搜索。

简单的图书管理系统概述.docx

简单的图书管理系统学年设计任务书

学 院 计算机与信息工程学院 专 业 网络工程

23

学年设计名称

简单应用系统设计 题 目 简单的图书管理系统

完成期限 自2014年6月30日至2014年8月30日共9周一、项目的目的

设计一个简单的图书管理系统二、项目任务的主要内容和要求

(1)要有界面;

(2)能够存储图书(包括图书编号、名称、作者、出版社名称、价格等);

(3)能够查找出已存在的图书;

(4)能够将新进的图书增加到图书管理系统里;

(5)能够将不在馆的图书进行删除。

(6)能够对在馆的图书进行修改。

三、项目设计(研究)思路

实现Java与access数据库进行连接,进而实现简单图书管理系统的各种功能。

四、具体成果形式和要求

通过GUI图形用户界面中按钮对应的选项来实现对图书系统中图书修改、添加、删除等功能。

起止日期

工作内容

6.30-7.15

分析题目,进行资料查询

7.16-8.25

编写代码

8.25-8.30

进行代码调试,答辩并编写文档

要参考资料

[1]赵生慧等.Java面向对象程序设计(第二版)[M].北京:

中国

水利水电出版社,2010.8

[2]万长选等.数据库系统原理与设计(第2版)[M].北京:

清华大学出版社,2012.9

[3]吴京慧等.数据库系统原理与设计实验教程[M].北京:

清华大

学出版社,2009.10

指导教师

意见

(签字):

月 日

系(教研室)

主任意见

(签字):

月 日

简单的图书管理系统学年设计任务书

学院名称:

计算机与信息工程学院

班级名称:

网络工程122班

学生姓名:

学 号:

题 目:

简单的图书管理系统

指导教师姓 名:

起止日期:

第一部分:

正文部分一、选题背景

随着我国国民经济的迅速发展和人民日常生活水平的不断提高,人民的精神生活也有着显著提高,人们对图书馆藏书的需求也越来越高,随之就伴来图书馆图书数目不断增加,这也带来了图书管理技术的挑战,以前的人工流水技术已经不能适应当代的环境,取而代之的是现代先进的图书管理技术,通过使用Java

编程并且链接数据库方法实现对图书的概览、借阅、入库、更新、删除等功能。

当今图书管理系统的一个重要领地就是面对可模块化处理的信息。

我所开发的系统就是利用现代的管理技术来实现对图书的管理,改善对图书的规范管理,提高图书管理的效率,方便统计和图书借阅,以便图书馆更好的为人民、为国家服务。

二、方案论证(或设计理念)

本次学年设计我所选择的题目是:

简单的图书管理系统,以便人们以后对

图书馆更好的应用,本次方案有以下几个特点:

⑴采用数据库建模进行功能分析,划分登陆、概览、存储、更新、删除等子功能、E-R进行数据分析;

⑵基于JavaSwing技术进行各模块的设计,采用Access进行数据库设计,

JDBC-ODBC技术进行数据库连接;

⑶使用JCreator开发环境完成了系统的登陆、概览、存储、更新、删除等功能。

三、过程论述

3.1系统功能分析

本次设计的简单的图书管理系统分为登陆、概览、存储、查询、删除、修改密码这些功能。

系统功能模块如图3-1所示:

简单的图书管理系统

图3-1图书管理系统功能

⑴用户登录:

根据数据库里已有的用户,输入用户名及密码进行登陆。

⑵图书概览:

登陆进入过后可以看到数据库里的所有图书。

⑶图书查询:

输入图书编号即可显示要查询的图书的信息。

⑷图书存储:

选择本选项,然后输入图书对应信息,点击“保存”,即可保存。

⑸图书删除:

输入要删除的图书编号,点击“删除”,即完成相应操作。

⑹修改密码:

即对用户登录密码的修改。

3.2系统数据分析

出版社

单价

图书号

入库时间

图书

图书名

作者

图书实体E-R图,如图3-2所示:

图3-2图书实体E-R图用户实体E-R图,如图3-3所示:

用户名

密码

用户

图3-3 用户实体E-R图

3.2系统架构设计

开始

N

判断

Y

用户登录

N

判断

Y

如图3-4所示:

结束

图3-4系统架构设计

3.3系统数据库设计

建立数据库,本数据库采用Access2000来创建,根据系统功能的分析需要创建2张表,分别是图书表(book),用户表(user)。

1.图书信息,如表3-1所示:

表3-1 book表

字段名称 数据类型

图书名 文本

图书号 文本(主键)

单价 文本

作者 文本

出版社 文本

入库时间 文本

2.用户信息,如图3-2所示:

表3-2user表

字段名称 数据类型

用户名 文本(主键)

密码 文本

3.4系统实现

3.4.1登录模块

本模块实现图书管理系统的登录功能,登录过后才可以对图书管理系统进行操作。

publicvoidconfirm()//验证用户和密码是否存在

{

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(ClassNotFoundExceptione){System.out.println(" 加载驱

动程序失败!

");}

try{

String url= "jdbc:

odbc:

driver={Microsoft AccessDriver

(*.mdb)};DBQ=Book.mdb";//直接使用当前类目录下的数据库文件Connectioncon=DriverManager.getConnection(url);Statementsql=con.createStatement();

Stringuname=t1.getText().trim();StringMima=t2.getText().trim();

StringqueryMima="select*fromuserwhere用户名='"+uname+"'

and密码='"+Mima+"'";

ResultSetrs=sql.executeQuery(queryMima);

if(rs.next())

{

newBook(uname);f.hide();

con.close();

}else{

示!

",



JOptionPane.showMessageDialog(null,"该用户不存在","提

JOptionPane.YES_NO_OPTION);

}

t1.setText("");

t2.setText("");

}catch(SQLExceptiong)

{

System.out.println("ECode"+g.getErrorCode());System.out.println("EM"+g.getMessage());

}

}

publicvoidactionPerformed(ActionEvente)

{

Stringcmd=e.getActionCommand();

if(cmd.equals("确定")){confirm();

}

elseif(cmd.equals("取消")){f.dispose();

}

}

3.4.1图书概览模块

本模块主要是实现对图书馆里图书总览的功能,并且能够知道图书馆现在图书数量。

publicvoidshowRecord()

{

while(i>=0)

{ar[i][0]="";

ar[i][1]="";

ar[i][2]="";

ar[i][3]="";

ar[i][4]="";

ar[i][5]="";i--;

}i=0;

try{



Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(ClassNotFoundExceptione){System.out.println(" 加载驱

动程序失败!

");}

try{

String url="jdbc:

odbc:

driver={MicrosoftAccessDriver

(*.mdb)};DBQ=Book.mdb";//直接使用当前类目录下的数据库文件Connectioncon=DriverManager.getConnection(url);

Strings="select*frombook";Statementsql=con.createStatement();

ResultSetrs=sql.executeQuery(s);

while(rs.next())

{

Stringbname=rs.getString

(1);Stringbno=rs.getString

(2);Stringprice=rs.getString(3);Stringwriter=rs.getString(4);Stringpublish=rs.getString(5);Stringindate=rs.getString(6);ar[i][0]=bname;

ar[i][1]=bno;

ar[i][2]=price;

ar[i][3]=writer;ar[i][4]=publish;ar[i][5]=indate;i++;

}

count=""+i+"";

L.setText("图书馆现在共有图书"+count+"本");f.repaint();

con.close();

}catch(SQLExceptiong)

{

System.out.println("ECode"+g.getErrorCode());System.out.println("EM"+g.getMessage());

}

}

publicvoidactionPerformed(ActionEvente)

{

Stringcmd=e.getActionCommand();

if(cmd.equals("确定"))

{

f.hide();

}

if(cmd.equals(" 返回"))f.hide();

}

3.4.1图书查询模块

本模块主要实现对在馆图书进行查询,应用数据库查询语句进行查询。

publicvoidshowRecord()

{

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(ClassNotFoundExceptione){System.out.println(" 加载驱动程序失败!

");}

try{

String url= "jdbc:

odbc:

driver={Microsoft Access Driver

(*.mdb)};DBQ=Book.mdb";//直接使用当前类目录下的数据库文件Connectioncon=DriverManager.getConnection(url);Statementsql;

Stringql=tf.getText().trim();

Strings="select*frombook where图书号='"+ql+"'";sql=con.createStatement();

ResultSetrs=sql.executeQuery(s);if(rs.next())

{

Stringbname=rs.getString

(1);Stringbno=rs.getString

(2);Stringprice=rs.getString(3);Stringwriter=rs.getString(4);

Stringpublish=rs.getString(5);Stringindate=rs.getString(6);tf1.setText(bname);tf2.setText(bno);tf3.setText(price);tf4.setText(writer);tf5.setText(publish);tf6.setText(indate);

}

else

{JOptionPane.showMessageDialog(null," 您输入的图书号不存在,请重新输入",

"输入错误",JOptionPane.YES_NO_OPTION);

}

con.close();

}catch(SQLExceptiong)

{

System.out.println("ECode"+g.getErrorCode());System.out.println("EM"+g.getMessage());

}

tf1.setEditable(false);tf2.setEditable(false);tf3.setEditable(false);tf4.setEditable(false);tf5.setEditable(false);tf6.setEditable(false);

}

3.4.1图书删除模块

本模块主要实现对不在馆图书进行删除,应用数据库删除语句进行删除,以便保持图书馆里图书数量正确。

publicvoiddeleteRecord(intindex)

{

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(ClassNotFoundExceptione){System.out.println(" 加载驱动程序失败!

");}

try{

String url= "jdbc:

odbc:

driver={Microsoft AccessDriver

(*.mdb)};DBQ=Book.mdb";//直接使用当前类目录下的数据库文件Connectioncon=DriverManager.getConnection(url);Statementsql;

Stringql=(String)(ar[index][1]);

Strings="delete*frombook where图书号='"+ql+"'";sql=con.createStatement();

intdel=sql.executeUpdate(s);if(del==1)

{JOptionPane.showMessageDialog(null," 删除成功!

",

"信息",JOptionPane.YES_NO_OPTION);

}

con.close();

f.repaint();

}catch(SQLExceptiong)

{

System.out.println("ECode"+g.getErrorCode());System.out.println("EM"+g.getMessage());

}

}

publicvoidactionPerformed(ActionEvente)

{

Stringremember="";Stringql="";

Stringcmd=e.getActionCommand();

if(cmd.equals("查询"))

{

ql=tf.getText().trim();remember=ql;

showRecord(ql);

}

if(cmd.equals(" 删除"))

{

intindex=table.getSelectedRow();if(index==-1)

行",

JOptionPane.showMessageDialog(null,"请选定要删除的表格

"输入错误",JOptionPane.YES_NO_OPTION);

else{

deleteRecord(index);

//showRecord(remember);

}

}

if(cmd.equals(" 取消"))f.hide();

}

3.4.1图书存储模块

本模块主要实现对新来的图书进行管理的功能,主要代码如下:

publicvoidinsertRecord()

{

if(tf1.getText().equals("")||tf2.getText().equals("")||tf3.getText().equals("")||

tf4.getText().equals("")||tf5.getText().equals("")||tf6.getText().equals(""))

{

JOptionPane.showMessageDialog(f3,"请填写图书资料");return;

}

try{



Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(ClassNotFoundExceptione){System.out.println(" 加载驱

动程序失败!

");}

try{

String url= "jdbc:

odbc:

driver={Microsoft AccessDriver

(*.mdb)};DBQ=Book.mdb";//直接使用当前类目录下的数据库文件Connectioncon=DriverManager.getConnection(url);Statementsql;

String s="insert into bookvalues('"+tf1.getText()+"','"+tf2.getText()+"','"+

tf3.getText()+"','"+tf4.getText()+"','"+tf5.getText()+"','"+tf6.g

etText()+"');";

//查询输入的图书号是否在数据库中存在

String query="select * from book where 图书号

='"+tf2.getText()+"'";

sql=con.createStatement();

ResultSetrs=sql.executeQuery(query);//返回查询结果集booleanmoreRecords=rs.next();//判断结果集是否有数据if(moreRecords)

{

重新输入");

JOptionPane.showMessageDialog(f3,"图书号已经被使用,请

con.close();tf2.setText("");return;

}

intinsert=sql.executeUpdate(s);if(insert==1)

{

");

JOptionPane.showMessageDialog(null,"图书信息录入成功!

tf1.setText("");

tf2.setText("");

tf3.setText("");

tf4.setText("");

tf5.setText("");

tf6.setText("");

}

}catch(SQLExceptiong)

{

System.out.println("ECode"+g.getErrorCode());System.out.println("EM"+g.getMessage());

}

}

3.4.1用户密码修改模块

本模块主要实现对用户密码修改的功能,主要代码如下:

publicvoidupdateM()

{

try{



Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(ClassNotFoundExceptione){System.out.println(" 加载驱

动程序失败!

");}

try{

String url= "jdbc:

odbc:

driver={Microsoft AccessDriver

(*.mdb)};DBQ=Book.mdb";//直接使用当前类目录下的数据库文件Connectioncon=DriverManager.getConnection(url);Statementsql=con.createStatement();

Stringuname=name.getText().trim();

String queryMima="select * from user where 用户名

='"+uname+"'";

ResultSetrs=sql.executeQuery(queryMima);if(rs.next())

{

StringnewMima=tf2.getText().trim();

Strings="updateuserset 密码='"+newMima+"'where用户名='"+uname+"'";

sql=con.createStatement();

intupdateMima=sql.executeUpdate(s);if(updateMima==1)

{

}else{

告!

",



JOptionPane.showMessageDialog(f,"密码修改成功!

");

}

con.close();

f.repaint();

JOptionPane.showMessageDialog(null,"该用户不存在","警

JOptionPane.YES_NO_OPTION);

}

name.setText("");

tf1.setText("");

tf2.setText("");

tf3.setText("");

}catch(SQLExceptiong)

{

System.out.println("ECode"+g.getErrorCode());System.out.println("EM"+g.getMessage());

}

}

//

publicvoid

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

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2