图书管理系统java课程设计报告.docx

上传人:b****5 文档编号:5064083 上传时间:2022-12-12 格式:DOCX 页数:36 大小:471.24KB
下载 相关 举报
图书管理系统java课程设计报告.docx_第1页
第1页 / 共36页
图书管理系统java课程设计报告.docx_第2页
第2页 / 共36页
图书管理系统java课程设计报告.docx_第3页
第3页 / 共36页
图书管理系统java课程设计报告.docx_第4页
第4页 / 共36页
图书管理系统java课程设计报告.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

图书管理系统java课程设计报告.docx

《图书管理系统java课程设计报告.docx》由会员分享,可在线阅读,更多相关《图书管理系统java课程设计报告.docx(36页珍藏版)》请在冰豆网上搜索。

图书管理系统java课程设计报告.docx

图书管理系统java课程设计报告

焦作大学信息工程学院

《Java实训》报告

题目:

图书管理系统

班级:

网络

(1)班

姓名:

张辉    

学号:

100302335 

2011年12月22日

 

摘要

随着信息技术的发展,计算机已被广泛的应用于社会的各个领域,成为推动社会发展的技术动力。

而在计算机应用中,软件的作用十分突出,软件已经发展成为信息技术的核心,主导着信息产品的开发和信息技术市场的进一步的开拓。

软件产业已成为社会信息化进程中的一个战略性产业。

在软件技术的应用中软件的开发技术尤其是应用型软件产品的开发技术成了重中之重。

不断开发适应用户需求、市场需要的新型软件产品。

尤其是在校园里,各种软件的应用无处不在,为我们的学习和生活提供了方便。

学校的图书馆不仅给我们提供看书学习的地方,还给我们提供了一套功能齐全的图书馆系统,方便我们搜索书籍、借阅图书。

我们本次的Java课程设计的最终目标是实现一个图书馆管理系统,使其具有一般图书管理系统所具有的功能,可以实现管理员日志、管理员添加、管理员退出、读者添加、读者修改、读者查询、读者删除、新书入库、书籍查询、书籍借阅与归还等功能。

因为Java是一门很优秀的编程语言,具有面向对象、与平台无关、安全、稳定和多线程等特点,所以用Java编程为我们本次程序的编写提供了方便。

在设计中我们主要进行了数据库及类的设计,把整系统分成了15个类和5个表。

通过应用awt、swing、sql、util等包,合理的添加了按钮、菜单、文本框、文本区、表格等组件类,还包含窗口、面板等容器类,经过设计者合理的布局,完成了窗体的设计,并通过建立JDBC-ODBC桥接器连接到Access数据库后,向数据库发送SQL语句实现程序与数据库中表间的消息通信,从而实现了相应的图书馆管理系统的功能。

本文主要分为绪论、系统功能介绍、数据库需求分析、系统功能实现、结论、致谢、参考文献7大块。

在绪论中介绍了本次课设选题的缘由及思想。

系统功能介绍中详细介绍了本图书管理系统的整体思想及其具体功能。

在数据库需求分析中详细说明了数据库的需求分析、概念设计及表的设计。

在系统功能实现中主要通过抓图来体现设计的结果。

总之,我们的整体设计思想均在报告中体现。

关键词:

图书馆管理系统,Java程序设计语言,Access数据库

目 录

摘要  I

第1章 绪 论  1

第2章系统功能介绍  2

2.1系统功能总框图  2

2.2模块功能介绍  2

2.2.1管理员模块功能介绍  2

2.2.2读者管理  3

2.2.3书籍管理模块功能介绍  3

2.2.4书籍借阅与归还功能介绍  4

2.2.5借阅超时功能介绍  4

2.3组内任务分工  4

第3章数据库设计  5

3.1数据库需求分析  5

3.2数据库概念结构设计  5

3.3数据库表的设计  6

第4章系统功能实现  8

4.1管理员模块功能实现  8

4.1.1管理员登陆  8

4.1.2管理日志  10

4.1.3管理员添加功能实现  11

4.1.4管理员切换  13

4.2读者管理模块功能实现  14

4.2.1读者添加  14

4.2.2读者修改  15

4.2.3读者查询  17

4.2.4读者删除  18

4.3书籍管理模块功能实现  19

4.3.1新书入库实现  19

4.3.2查询功能实现  21

4.4书籍借阅与归还功能实现  23

4.4.1借阅书籍功能实现  23

4.4.2归还书籍功能实现  25

4.5借阅超时功能实现  28

结 论  30

致 谢  31

参考文献  32

 

第1章 绪 论

随着社会经济的迅速发展和科学技术的全面进步,计算机事业的飞速发展,以计算机与通信技术为基础的信息系统正处于蓬勃发展的时期。

随着经济文化水平的显著提高,人们对生活质量及工作环境的要求也越来越高。

书籍做为人类的精神食粮,在现代社会中越来越受到重视,大量的书籍出现在市场上,人们有了各种各样不同的选择。

与此同时,为了管理大量的图书,图书管理系统也大量的出现,随着图书的大量增加,其管理难度也越来越大,如何优化管理也就成为了一个大众化的问题。

现已有的图书管理系统,其功能已十分强大,为了便于管理员对图书管理系统进行妥善的管理和读者的查询,图书管理系统为管理员提供了管理日志、管理员添加、管理员切换、读者添加、读者修改、读者查询、读者删除、新书入库等功能,为读者提供了书籍查询、读者借阅信息查询、图书网上续借等很多功能。

大学为我们提供了自由的学习环境,使我们有更多的时间到图书馆借阅书籍,让我们可以随时掌握各方面的知识,不断提高自我、充实自我,但由于图书馆藏书成千上万,我们很难一本一本的去查找自己感兴趣的书籍,因此我们会经常用到学校为我们提供的图书管理系统,用时间长了便对此产生了兴趣,正好本次课程设计为我们提供了良好的机会,让我们亲自设计并实现了图书管理系统的部分功能。

设计一个图书管理系统必不可少的必须对全管书籍进行分类汇总。

而这就是我们所说的数据库设计的第一阶段:

需求分析。

在这一阶段除了对具体情况诸如实行对管理员的管理、对读者的管理、书籍管理、书籍的借阅与归还、借阅超时等功能的实现,还需要对用户的需求进行调查和分析,否则就失去了设计这个系统的意义了。

对于界面的设计我们应该追求的是:

美观、易读性强、清晰度高;原则是:

不能因为刻意追求美观而以整个界面的清晰度的牺牲作为代价,不能为了清晰度而抛弃对易读性的追求。

再设计的过程中我们应该根据实际的情况进行设计,做到具体问题具体分析,不刻意追求原则。

在对应的界面与Access数据库建立连接,并实现对应的SQL语句进行实现将产生的结果显示出来。

并运用捕捉异常的方法,将异常信息显示出来。

实现SQL语句的时候借助前台开发工具中关于数据处理的控件来完成。

对于读者而言他们的需求是了解图书的基本情况,自己的借阅情况。

总而言之就是实现对各个信息表的查询。

对于图书管理员而言要实现的功能相对而言比较多,例如实现新书入库、Access数据库表的创建、系统的维护等等,这些都需要设计和实现的。

 

第2章系统功能介绍

2.1系统功能总框图 

图书馆管理系统功能总框图,如图2-1所示。

图2-1系统功能框架图

2.2模块功能介绍

2.2.1管理员模块功能介绍

1.管理员登陆

此模块主要是利用MenuBar添加菜单条,利用Menu和MenuItem添加菜单和菜单的各个参数,通过事件ActionEvent可以实现进入各个模块如管理日志、管理员添加、管理员切

换、读者添加、读者修改、读者查询、读者删除、新书入库、书籍查询、借阅书籍、归还书

籍、借阅超时及退出的功能。

2.管理日志

此模块可以清楚的显示出书籍借阅与归还的信息,包括书号、书名、图书证号、借/还、操作日期、已付款额。

读者可以通过此模块实现的功能清楚的了解图书被借阅和归还的详细信息,从而给读者带来了很多方便。

3.管理员添加功能介绍

此模块功能是增加新管理员的登陆帐户。

在图书馆管理系统中必须有每一个管理者的帐户让其可以正常进行新图书证的办理、借阅书籍和归还书籍等系统管理。

所以在管理员功能模块中增加了管理员添加这个功能。

4.管理员切换

此模块的主要功能是进行管理员之间的切换,即单击管理员菜单下的管理员切换,就会退出当前管理员界面,从而出现管理员切换窗口,而另一管理员就可以在管理员切换窗口中的用户名和密码两栏中通过输入自己的用户名和密码直接进入该系统。

2.2.2读者管理

1.读者添加

此模块主要的实现功能是添加新的读者信息,即当有新的读者要看查看本图书馆中的书藉,可以通过此功能实现,当数据库中存在其新信息,即成为本图书馆的新一位读者。

其中信息分别包括图书证号、学生姓名、性别、系别、班级,同时可有三项功能在此处实现,即添加、重置以及返回。

2.读者修改

此模块主要的实现功能对有信息更新的读者进行即时修改,以随时更新读者在数据库中的信息。

本模块通过图书证号确定读者,可对读者信息的新图书证号、学短姓名、性别、系别、班级。

此处可分别实现对该功能的修改、重置、返回。

3.读者查询

此模块主要可对所要了解的读者信息。

即把读者的信息从数据库调出来,显示在该窗口中的文字区域。

查询方式分别有按图书证查询、按姓名查询、按班级查询、按年级查询,并可通过办理入相应的关键字,更加缩小查询范围。

此处可实现查询和返回功能。

4.读者删除

此模块可以删除一些不再使用本系统的读者资料,从而达到对数据库中的清理,即清除一些不必要资料,此处有四种删除途径,分别为按图书证号删除、按姓名删除、按班级删除、安年级删除,并可通过所输入的关键字尽快找到所要删除的资料。

此处可分别实现对该功能的修改、重置、返回。

2.2.3书籍管理模块功能介绍

1.新书入库功能介绍

此模块主要的实现功能是将新来的图书输入到图书馆管理系统的书库当中,其中主要按如下信息往书库中输入,这部分的操作主要是便于书库合理的管理,有利于读者能够对新书有

一个更详细的了解。

其中包括如下信息:

新书书号、新书名称、新书出版日期、新书出版社、入库数量、编写作者、新书单价。

2.书籍查询功能介绍

在图书馆管理系统中书籍查询是最基本的功能,读者可以根据自己的需求来查询想要借阅的书籍。

本系统是用Java应用程序和Access数据库一起开发的其中利用Java来编程实现功能的代码和布置运行界面。

界面是由检索项、检索词和显示文本区三个部分组成的用户根据自己的需要在检索项中选择自己所要按什么字段进行查询,其中书籍查询功能的检索项中可以按书号查询、按书名查询、按作者名查询、按出版社查询、按入库时间查询等基础查询。

选择检索项后用户只要在检索词中添写自己所要查询的内容并确定键确认后用户要查询的内容就可以在显示文本区中显示出来。

用户可以根据显示的信息得知自己所要借阅书籍的情况。

2.2.4书籍借阅与归还功能介绍

1.借阅书籍功能介绍

此模块主要实现读者可凭有效的图书证号,借阅图书馆内未借出的图书。

输入图书证号后,可显示了该图书证持有者的全部信息(包括借书证号、姓名、性别、所在班级、所属系部、当前可借阅图书个数),供读者确认信息。

通过输入有效的图书编号,查询该图书的全部信息(包括书号、书名、作者、出版社、是否借出、价格)。

借阅成功后,将该图书证号、书号、借阅日期、应还日期信息插入到数据库的表中进行记录。

2.归还书籍功能介绍

此模块主要实现读者凭所要归还图书的图书证号归还图书。

输入所要归还的图书编号后,可显示了该图书证持有者的全部信息(包括借书证号、姓名、性别、所在班级、所属系部、当前可借阅图书个数),供读者确认信息。

还书成功后,从数据库中删除该书的借出记录,并修改数据库中的相应信息。

2.2.5借阅超时功能介绍

此模块主要实现显示过期图书的信息(包括图书证号、书号、借阅日期、应还日期)提醒读者还书。

2.3组内任务分工

组内分工情况如下表2-1所示。

表2-1组内分工情况表

组长

邹刚

读者添加、查询、修改、删除。

 

 

 

 

组员

罗姗姗

书籍借阅与归还模块、借书超期限子系统。

李呈呈

管理员添加、新书入库、按指定条件进行图书查询。

 

刘兰兰

数据库创建、登陆界面设计、管理员模块。

 

 

 

 

第3章数据库设计

在此图书馆管理系统中,使用到了一个重要的连接,即与数据库Accesss相连。

数据库中存有图书馆中所信息,包括读者信息、管理员资料、借阅与退还记录。

所有与管理有关的数据皆在其中,是保证系统能够正常实现各种功能的一架桥。

3.1数据库需求分析

⒈Admi表,即管理员表,记录了用户名和密码。

⒉Admirz表,即管理日志表,记录了书号、书名、图书证号、借/还、操作日期、已付款额。

⒊book表,即图书表,记录了书号、书名、作者、出版社、入库时间、是否借出、价格。

⒋borrowbook表,即借阅表,记录了图书证号、书号、借阅日期、应还日期。

⒌person表,即读者表,记录了图书证号、姓名、性别、系别、班级。

3.2数据库概念结构设计

图书馆管理系统E-R图,如图3-1。

图3-1图书馆管理系统E-R图

3.3数据库表的设计

⒈Admi表

表中记录了可以使管理员进入该系统的用户名及密码,如表3-1所示。

表3-1管理员信息表

字段名称

数据类型

长度

备注

用户名

文本

10

 

密码

文本

15

 

 

 

 

 

⒉Admirz表

表中记录借还书日志,用于存下所有对图书操作的记录,以便以后可以翻阅和查找,如表3-2所示。

表3-2管理日志表

字段名称

数据类型

长度

备注

书号

文本

10

 

书名

文本

15

 

作者

文本

15

 

出版社

文本

15

 

入库时间

DATE

15

 

已付款额

文本

10

 

 

 

 

 

⒊book表

表中记录了库内所有图书的所有资料,如表3-3。

表3-3图书表

字段名称

数据类型

长度

备注

书号

文本

10

 

书名

文本

15

 

作者

文本

15

 

出版社

文本

15

 

入库时间

DATE

15

 

是否借出

文本

10

 

价格

文本

10

 

 

 

 

 

⒋person表

表中记录库中所有读者的相关信息,如表3-4所示。

表3-4读者表

字段名称

数据类型

长度

备注

图书证号

文本

10

 

姓名

文本

15

 

性别

文本

15

 

系别

文本

15

 

班级

文本

15

 

 

 

 

 

⒌borrowbook表

表内记录了此时图书的借阅情况,如表3-5所示。

表3-5借阅表

字段名称

数据类型

长度

备注

图书证号

文本

10

 

书号

文本

15

 

借阅日期

DATE

15

 

应还日期

DATE

15

 

 

 

 

 

 

第4章系统功能实现

4.1管理员模块功能实现

4.1.1管理员登陆

此模块是整个系统最主要的部分,管理员可以通过此模块实现进入其余各个模块如管理日志、管理员添加、管理员切换、读者添加、读者修改、读者查询、读者删除、新书入库、书籍查询、借阅书籍、归还书籍、借阅超时及退出的功能。

图书管理系统管理员界面如图4-1所示。

图4-1图书管理系统管理员

主要程序代码如下:

publicvoidactionPerformed(ActionEvente)

{

if(e.getSource()==itemAdmiqh)

{

this.dispose();

Inwinin=newIn("系统登陆");

}

if(e.getSource()==itemtc)

{

System.exit(0);

}

if(e.getSource()==itemAdmixj)

{

CreatAdmicreatAdmi=newCreatAdmi("管理员添加");

}

if(e.getSource()==itemAdmirz)

{

WinTablewintable=newWinTable("管理日志");

}

if(e.getSource()==itemBookrk)

{

AddInfyaddInfy=newAddInfy();

}

if(e.getSource()==itemPersonlr)

{

Winpersonaddwinperson=newWinpersonadd("读者添加");

}

if(e.getSource()==itemPersoncx)

{

Winpersonsearchwinperson=newWinpersonsearch("读者信息查询");

}

if(e.getSource()==itemPersonxg)

{

Winpersonmodifywinperson=newWinpersonmodify("读者信息修改");

}

if(e.getSource()==itemPersonsc)

{

Winpersondeletewinperson=newWinpersondelete("读者删除");

}

if(e.getSource()==itemBookcx)

{

Windowjjok=newWindowjj();

}

if(e.getSource()==itemchaoshi)

{

daywin=newday();

}

if(e.getSource()==itemBorrowjs)

{

Borrowbookwin=newBorrowbook();

}

if(e.getSource()==itemBorrowhs)

{

Returnbookwin=newReturnbook();

}

}

4.1.2管理日志

此模块通过定义类WinTable继承顶层容器JFrame,再添加普通容器JScrollPane、Jpanel,然后通过BorderLayout布局创建界面,最后主要通过数组利用while循环在连接好的数据库中查找表Admirz中的内容,从而实现了可以清楚的显示出书籍借阅与归还信息的功能。

管理日志界面如图4-2所示。

图4-2管理日志

主要程序代码如下:

WinTable(Strings)

{

super(s);

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

}

catch(ClassNotFoundExceptione)

{  System.out.println(""+e);

}

try{  con=DriverManager.getConnection("jdbc:

odbc:

sun","123","123");

sql=con.createStatement();

rs=sql.executeQuery("SELECT*FROMAdmirz");

while(rs.next())

{

k++;

}

}

catch(SQLExceptione)

{  System.out.println(""+e);

}

try{  con=DriverManager.getConnection("jdbc:

odbc:

sun","123","123");

sql=con.createStatement();

rs=sql.executeQuery("SELECT*FROMAdmirz");

a=newObject[k][6];

while(rs.next())

{

for(intj=0;j<6;j++)

{

if(j<5)

a[i][j]=rs.getString(j+1);

else

{

a[i][j]=rs.getDouble(j+1);

i++;

}

}

}

con.close();

}

catch(SQLExceptione)

{  System.out.println(""+e);

}

table=newJTable(a,name);

Containercon=getContentPane();

getContentPane().add(newJScrollPane(table),BorderLayout.CENTER);

setBounds(120,125,700,500);

setVisible(true);

validate();

addWindowListener(newDisposeListener());

}

}

4.1.3管理员添加功能实现

功能介绍:

该程序主要实现管理员的添加,以便于让实行对图书管理员的管理。

按照标

签提示输入信息,然后点击确定按钮。

首先判断管理员名文本框中输入的文本信息是否符合大于3个字符并小于10个字符的规则,如果不符合规则,则提示错误,如果符合规则,再到Admi表中进行查询,如果相同则用提示框提示错误。

若无相同则可注册。

但还需要保证前后两次的密码相同,才能成功注册,管理员登陆窗口如图4-3所示。

图4-3管理员添加成功界面

主要程序代码如下:

publicvoidactionPerformed(ActionEventc)

{

Stringb=textUser.getText();

Stringd=textPassword1.getText();

Stringg=textPassword2.getText();

if(c.getSource()==buttonqk)

{  textUser.setText(null);

textPassword1.setText(null);

textPassword2.setText(null);

}

if(c.getSource()==buttonEnter||c.getSource()==textPassword2)

{

 

if(b.length()<3||b.length()>10)

{

JOptionPane.showMessageDialog(null,"用户名应在3~10个字符之间");

textUser.setText(null);        

}

else

{

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

}

catch(ClassNotFoundExceptione)

{  System.out.println(""+e);

}

try{  con=DriverManager.getConnection("jdbc:

odbc:

sun","123","123");

sql=con.createStatement();

rs=sql.executeQuery("SELECT*FROMAdmiWHERE用户名="+"'"+b+"'");

if(rs.next())

{

Stringuser=rs.getString

(1);

if(b.equals(user))

{

JOptionPane.showMessageDialog(null,"此管理员已被注册","警告",JOptionPane.WARNING_MESSAGE);

}

}

else

{

if(d.equals(g))

{

sql.executeUpdate("INSERTINTOAdmiVALUES"+"("+"'"+b+"'"+","+"'"+d+"'"+")");

this.dispose();

JOptionPane.showMessageDialog(null,

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

当前位置:首页 > 小学教育 > 英语

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

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