java课程设计报告图书借阅系统Word格式.docx

上传人:b****6 文档编号:21254296 上传时间:2023-01-28 格式:DOCX 页数:18 大小:1.03MB
下载 相关 举报
java课程设计报告图书借阅系统Word格式.docx_第1页
第1页 / 共18页
java课程设计报告图书借阅系统Word格式.docx_第2页
第2页 / 共18页
java课程设计报告图书借阅系统Word格式.docx_第3页
第3页 / 共18页
java课程设计报告图书借阅系统Word格式.docx_第4页
第4页 / 共18页
java课程设计报告图书借阅系统Word格式.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

java课程设计报告图书借阅系统Word格式.docx

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

java课程设计报告图书借阅系统Word格式.docx

图书基本信息的模糊查询。

3)为借书人办理注册。

4)办理借书手续

5)借书信息的浏览、查询、统计,统计可按班、书、类别、日期。

可结合图表

任务要求

1.掌握程序与数据库之间的连接,以对图书信息进行编辑并且添加、修改、删除等操作;

2.掌握图书信息模糊查询。

3.掌握掌握数据库的添加。

4.掌握数据库信息的浏览、查询、统计。

参考文献

[1](美)CayS.Horstmann、GaryCornell.Java核心技术卷I:

基础知识(第8版)(英文影印版).人民邮电出版社,2008.11

[2]耿祥义、张跃平.JAVA2实用教程(修订).清华大学出版社,2001.10

审查意见

指导教师签字:

教研室主任签字:

史卫亚

2012年6月20日

一、需求分析

图书借阅系统需求可分为三个方面:

一方面是图书管理人员对需要进行图书借阅的同学进行信息注册,获得借书证;

二方面是学生通过计算机进行图书浏览;

三方面是学生通过计算机进行图书借阅。

由于本系统管理的对象单一,都是校图书馆里的书,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。

因此,比较适合于采用数据库管理。

首先是输入判断,相当于在登陆模块,要求用户输入用户名和密码;

然后判断,如果判断失败退出系统,否则进入图书管理系统的主界面。

进入主界面后,用户要选择所需执行的功能,来完成所需操作。

二、概要设计

三、运行环境、开发语言

Windows98或以上操作环境系统采用JDK1.6或以上版本,后台数据库为SQLserver2000

四、详细设计

1程序清单

表1

函数名

功能

文件名

CreateBook

创建book数据库

CreateRecord

创建借阅表数据库

AddBook

添加图书

BorrowBook

借阅图书

dispBook

浏览在库图书

BackBook

归还图书

CreatePeople

创建people数据库

dispBorrow

浏览被借阅的书

AddPeople

会员注册

Enter

登录

dispPeople

浏览会员信息

recordbook

是否借阅七本

Delete

注销会员

ISBNSelect

检查是否已借阅

SetBook

修改图书已借数

SetPeople

修改会员已借数

Check

检查是否借阅

Count1

统计借阅数量

按ISBN、学号、借书日期统计

2数据库设计

表2:

Book(图书信息)

列名

型(包括长度)

描述

name

varchar

图书名称

ISBN

bigint

国际标准书号

classify

图书分类

writer

varchar,

作者

kucun

库存

n

借出量

表3:

People(会员信息)

sex

性别

id

class

班级

借阅图书量

password

密码

表4:

Record(借阅图书)

peopleid

借阅人学号

bookISBN

图书国际标准书号

borrowdate

借书时间

backdate

还书时间

3主要代码

//注册会员(图书添加类似)

publicvoidAddPeople()throwsException{

longpassword1,password2;

System.out.println("

请输入注册人的的信息:

"

);

System.out.printf("

姓名:

String_name=sc.next();

性别:

String_sex=sc.next();

学号:

long_id=sc.nextLong();

班级:

long_class=sc.nextLong();

do{

System.out.printf("

请输入密码:

password1=sc.nextLong();

请再输入密码:

password2=sc.nextLong();

}while(password1!

=password2);

Class.forName(driver);

con=DriverManager.getConnection(url,user,pass);

Stringsql="

insertintopeople(name,sex,id,class,n,password)values(?

?

)"

;

PreparedStatementprep=con.prepareStatement(sql);

prep.setString(1,_name);

prep.setString(2,_sex);

prep.setLong(3,_id);

prep.setLong(4,_class);

prep.setLong(5,0);

prep.setLong(6,password1);

prep.execute();

prep.close();

con.close();

}

//浏览在库图书

publicvoiddispBook()throwsException{

select*frombook"

ResultSetre=prep.executeQuery();

intcount=0;

while(re.next()){

count++;

System.out.println(re.getString("

name"

)+"

"

+re.getLong("

ISBN"

+re.getString("

classify"

writer"

kucun"

n"

));

}

if(count==0){

System.out.println("

没有图书。

re.close();

prep.close();

}

//所借图书是否借完

publiclongISBNSelect(long_ISBN)throwsException{

longm;

Class.forName(driver);

con=DriverManager.getConnection(url,user,pass);

Stringsql="

select*frombookwhereISBN=?

PreparedStatementprep=con.prepareStatement(sql);

prep.setLong(1,_ISBN);

ResultSetre=prep.executeQuery();

while(re.next()){

if(re.getLong("

)<

=re.getLong("

)){

re.close();

return-1;

}

else{

m=re.getLong("

re.close();

returnm;

re.close();

return-2;

//登录会员检查是否能借图书

publiclongEnter(longid,longpassword)throwsException{

select*frompeoplewhereid=?

prep.setLong(1,id);

if(re.getLong("

password"

)==password){

if(m>

=7){

re.close();

return-1;

}

else{

returnm;

}

//检查是否借阅该图书

publiclongrecordbook(long_id,long_ISBN)throwsException{

select*fromrecordwherebookISBN=?

prep.execute();

peopleid"

)==_id){

return1;

return0;

//借书

publicvoidBorrowBook(long_ISBN,long_id)throwsException{

System.out.printf("

借阅时间:

long_borrowdate=sc.nextLong();

long_backdate=_borrowdate+100;

insertintorecord(peopleid,bookISBN,borrowdate,backdate)values(?

prep.setLong(2,_ISBN);

prep.setLong(1,_id);

prep.setLong(3,_borrowdate);

prep.setLong(4,_backdate);

prep.execute();

prep.close();

//修改在库图书

voidSetBook(long_ISBN,longm)throwsException{

updatebooksetn=?

whereISBN=?

prep.setLong(1,m);

//修改people已借图书数目

voidSetPeople(long_id,longm)throwsException{

updatepeoplesetn=?

whereid=?

prep.setLong(2,_id);

//还书

publicvoidBackBook(long_ISBN,long_id)throwsException{

deletefromrecordwherebookISBN=?

andpeopleid=?

prep.setLong(1,_ISBN);

//检查是否借阅该书

publiclongCheck(Stringsql,longISBN,longid)throwsException{

intcount=0;

prep.setLong(2,ISBN);

count++;

returncount;

判断能否借书语句

System.out.printf("

请输入会员id:

id=sc.nextLong();

请输入会员密码:

password=sc.nextLong();

m=book.Enter(id,password);

if(m>

=0){

请输入借阅图书的ISBN:

ISBN=sc.nextLong();

j=book.recordbook(id,ISBN);

if(j==0){

n=book.ISBNSelect(ISBN);

if(n==-2){

没有您借阅的图书。

elseif(n==-1){

您借阅的图书已借完。

else{

book.BorrowBook(ISBN,id);

book.SetBook(ISBN,n+1);

book.SetPeople(id,m+1);

else{

您已借阅该书,请借阅其他的书。

}

elseif(m==-1){

您已借阅七本书。

else{

没有该会员。

五、调试与分析

在调试中,每个人可以无限借书,图书借阅量不能修改,在会员注册的数据库中添加了,借阅图书量,每次借阅前判断是否已经借阅七本书,并且判断图书是否借出去完,本人是否借阅过该图书。

并且在创建会员是添加了密码,只有在登录密码才能借阅图书。

还书时不能修改图书的已借量,添加了一个程序修改借阅量和本人借阅书个数。

如果借两本一样的书时还书出现问题,添加程序强制只能借同一种书一本。

六、功能测试

图1:

图2:

图3:

图4:

图5:

登录借阅图书

图6:

浏览被借图书

图7:

图8:

图9:

还书、浏览在库图书

七、结论与心得

Java是一门高科技语言,学习上要做到严谨细心,平时要多加练习。

实际操作,通过本次图书借阅系统课程设计,通过数据库来实现,实现了图书的添加及其管理。

会员注册、注销会员、图书借阅、还书的实现用的是数据库的插入与删除,然后进行更改借阅量、已借图书量,统计查找则是通过数据库的浏览实现。

能比较迅速地找到图书,以实现借阅、还书、统计,以实现创建借阅和还书的需要。

在于数据库应用方面,加深了对数据库的理解和运用,深刻理解了java的内涵和意义。

懂得了一种语言的价值。

八、参考资料

(要列出在完成设计中查看过并有所利用的所有参考资料,包括各类技术书籍、期刊论文和相关网页的网址)

[1]CayS.Horstmann,GaryCornell.CoreJavaVolumeI:

Fundamentals.8thEdition.PrenticeHall,2008.

[2]CayS.Horstmann,GaryCornell.CoreJavaVolumeII:

AdvancedFeatures.8thEdition.PrenticeHall,2008.

[3]MaydeneFisher,JonEllis,JonathanBruce.JDBCAPITutorialandReference.3rdEdition.AddisonWesley,2003.

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

当前位置:首页 > 党团工作 > 思想汇报心得体会

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

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