简单的图书管理系统知识分享Word文档格式.docx

上传人:b****5 文档编号:19676933 上传时间:2023-01-08 格式:DOCX 页数:21 大小:111.73KB
下载 相关 举报
简单的图书管理系统知识分享Word文档格式.docx_第1页
第1页 / 共21页
简单的图书管理系统知识分享Word文档格式.docx_第2页
第2页 / 共21页
简单的图书管理系统知识分享Word文档格式.docx_第3页
第3页 / 共21页
简单的图书管理系统知识分享Word文档格式.docx_第4页
第4页 / 共21页
简单的图书管理系统知识分享Word文档格式.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

简单的图书管理系统知识分享Word文档格式.docx

《简单的图书管理系统知识分享Word文档格式.docx》由会员分享,可在线阅读,更多相关《简单的图书管理系统知识分享Word文档格式.docx(21页珍藏版)》请在冰豆网上搜索。

简单的图书管理系统知识分享Word文档格式.docx

工作内容

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系统架构设计

如图3-4所示:

图3-4系统架构设计

3.3系统数据库设计

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

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

表3-1book表

字段名称

数据类型

图书名

文本

图书号

文本(主键)

单价

作者

出版社

入库时间

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

表3-2user表

用户名

密码

3.4系统实现

3.4.1登录模块

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

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

{

try{

Class.forName("

sun.jdbc.odbc.JdbcOdbcDriver"

);

}catch(ClassNotFoundExceptione){System.out.println("

加载驱动程序失败!

"

}

try{

Stringurl="

jdbc:

odbc:

driver={MicrosoftAccessDriver(*.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());

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;

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)

))

f.hide();

}

返回"

3.4.1图书查询模块

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

Statementsql;

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

select*frombookwhere图书号='

+ql+"

sql=con.createStatement();

if(rs.next())

Stringbname=rs.getString

(1);

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);

}

tf1.setEditable(false);

tf2.setEditable(false);

tf3.setEditable(false);

tf4.setEditable(false);

tf5.setEditable(false);

tf6.setEditable(false);

3.4.1图书删除模块

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

publicvoiddeleteRecord(intindex)

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

delete*frombookwhere图书号='

intdel=sql.executeUpdate(s);

if(del==1)

删除成功!

信息"

Stringremember="

Stringql="

查询"

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

remember=ql;

showRecord(ql);

删除"

{

intindex=table.getSelectedRow();

if(index==-1)

请选定要删除的表格行"

else{

deleteRecord(index);

//showRecord(remember);

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;

insertintobookvalues('

+tf1.getText()+"

'

+tf2.getText()+"

+

tf3.getText()+"

+tf4.getText()+"

+tf5.getText()+"

+tf6.getText()+"

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

Stringquery="

select*frombookwhere图书号='

sql=con.createStatement();

ResultSetrs=sql.executeQuery(query);

//返回查询结果集

booleanmoreRecords=rs.next();

//判断结果集是否有数据

if(moreRecords)

JOptionPane.showMessageDialog(f3,"

图书号已经被使用,请重新输入"

tf2.setText("

return;

intinsert=sql.executeUpdate(s);

if(insert==1)

图书信息录入成功!

tf1.setText("

tf3.setText("

tf4.setText("

tf5.setText("

tf6.setText("

3.4.1用户密码修改模块

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

publicvoidupdateM()

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

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

Strings="

updateuserset密码='

+newMima+"

where用户名='

+uname+"

intupdateMima=sql.executeUpdate(s);

if(updateMima==1)

JOptionPane.showMessageDialog(f,"

密码修改成功!

}else

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

当前位置:首页 > 工程科技 > 环境科学食品科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1