图书借还
检室
埔输入书号,
竹名:
作帝状妇
ifc«
账户管理界面:
图书管理界面:
图书管理
*MNHCa
WAIVKGU
M&NIISGft
添加图书界面:
添加图书
类别:
膑弄类琳,
书名:
2J
作者:
出版社:
价格:
确定
修改图书界面:
修改图书信息
15■;:
I
类别:
页逸择晒
书名:
作者:
出版社:
状态:
。
馆
价格:
确定
账户值息界面:
账户信息
AH5记录界面:
借书记录
普通用户主界面:
普通用户際户管理界面:
账户管理
背景图片,
数据库文件(tsglsys.Sql):
SETNAMESutf8mb4;
SETFOREIGN_KEY_CHECKS=0;
DROPTABLEIFEXISTSbookcategory*;
CREATETABLE'bookcategory'(
'Category'varchar(20)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULLCOMMENT1类别‘,
PRIMARYKEY('Category')USINGBTREE
)ENGINE=InnoDBCHARACTERSET=utf8COLLATE=utf8_general_ciROW.FORMAT=Compact;
INSERTINTO'bookcategory'VALUES('军事');
INSERTINTO'bookcategory'VALUES('天文');
INSERTINTO'bookcategory'VALUES('学术');
INSERTINTO'bookcategory'VALUES('小说');
INSERTINTO'bookcategory'VALUES('文艺');
INSERTINTO'bookcategory'VALUES('科幻');
INSERTINTO'bookcategory'VALUES('经济‘);
DROPTABLEIFEXISTSbooktable,;
CREATETABLE'booktable'(
'bookid'int(10)NOTNULLAUTOJNCREMENTCOMMENT'书号‘,
'category'varchar(20)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULLCOMMENT'类别',
'bookname'varchar(lOO)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULLCOMMENT'书名,,
author'varchar(2O)CHARACTERSETutf8COLLATEutf8_general_ciNULLDEFAULTNULLCOMMENT'作者,
'press'varchar(lOO)CHARACTERSETutf8COLLATEutf8_general_ciNULLDEFAULTNULLCOMMENT'出版社,
price'float(10,2)NOTNULLCOMMENT'价格
'state'varchar(20)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULLCOMMEN「状态
PRIMARYKEY(bookid*)USINGBTREE,
INDEX'category'('category')USINGBTREE,
CONSTRAINT'booktable_ibfk_l*FOREIGNKEY('category')REFERENCES'bookcategory'(Category*)ONDELETERESTRICTONUPDATECASCADE
)ENGINE=InnoDBAUTOJNCREMENT=21CHARACTERSET=utf8COLLATE=utf8_general_ciROW.FORMAT=Compact;
INSERTINTO'booktableVALUES(1,,学术。
'《JAVA程序设计教程》*,'刘志宏航空工业出版社)45.00,在馆,);
INSERTINTO'booktable*VALUES(2,,学术〉,《软件工程》‘,'程成'机械工业出版社',31.50,*在馆‘);
INSERTINTO'booktable'VALUES(3,'学术*(计算机文化》'(美)帕森斯(ParsonsJJf,'电子工业出版社28.00,,在馆》;
INSERTINTO'booktable'VALUES(4,,文艺〉'《我在未来等你》','刘同','青年光影出版社36.50,,在馆‘);
INSERTINTO'booktable'VALUES(5,'小说,《西游记》'吴承恩'岳麓出版社33.50,,在馆,);
INSERTINTO'booktable*VALUES(6,'学术'《数据结构(c语言)》\'严蔚敏清华大学出版社"27.50,,在馆,);
INSERTINTO'booktable'VALUES(7,,学术。
1INSERTINTO'booktableVALUES(8,'学术《计算机文化基础》,,'李永红','对外经济贸易大学。
32.50,在馆,);
INSERTINTO'booktable'VALUES(9,,学术J《数据库系统实现》/加西亚-莫利纳‘机械工业出版社',47.00,,在馆》;
INSERTINTO'booktable'VALUES(10,,文艺,'《数据库系统基础教程》'厄尔曼'机械工业出版社。
38.50,,在馆');
INSERTINTO'booktable*VALUES(11,'学术J《数学思维导论》‘KeithDevlin1,'人民邮电出版枇40.00,,在馆)
INSERTINTO'booktable'VALUES(12,'学术‘《移动应用Ul设计必修课》‘,'余振华'人民邮电出版社36.00,,在馆');
INSERTINTO'booktable'VALUES(13,,学术,1《快速软件开发》,史蒂夫•迈克康奈尔,,‘清华大学出版社*,25.50/在馆,);
INSERTINTO'booktable'VALUES(14,,科幻J《三体》‘刘慈欣‘重庆出版社31.00,,在馆
INSERTINTObooktable*VALUES(15,,科幻,,'《海底两万里》\,镭尔•凡尔纳,,'译林出版社32.50,,在馆
INSERTINTO'booktable'VALUES(16,'军事‘《狼牙》'刘猛'北京联合出版公司35.50,,在馆》;
INSERTINTO,booktable'VALUES(17,'天文'《宇宙的琴弦》'布赖恩•格林','湖南科学技术岀版社。
30.00,,在馆
INSERTINTObooktableVALUES(18,'经济,,'《货币经融学》'弗宙德里克・S•米什金'中国人民大学出版社60.00/在馆》;
DROPTABLEIFEXISTS'borrowrecords';
CREATETABLE'borrowrecords*(
'id'int(10)NOTNULLAUTOJNCREMENTCOMMEN「借书序列‘,
'user'varchar(20)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULLCOMMENT'用户名,
'bookid'int(10)NOTNULLCOMMENT'书号‘,
'bookname'varchar(SO)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULLCOMMENT,书名',
'borrowtime'dateNOTNULLCOMMENT‘借书时间',
'returntime*dateNULLDEFAULTNULLCOMMENT1还书时间',
'status'varchar(20)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULLCOMMENT'状态:
PRIMARYKEY('id')USINGBTREE
)ENGINE=InnoDBAUTOJNCREMENT=25CHARACTERSET=utf8COLLATE=utf8_general_ciROW.FORMAT=Compact;
DROPTABLEIFEXISTS'usertable*;
CREATETABLE'usertable*(
'user'varchar(20)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULLCOMMENT'用户名,,
'studentid'varchar(2O)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULLCOMMENT1学号‘,
'name'varchar(2O)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULLCOMMENT名
I
'password*varchar(2O)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULLCOMMENT'密码',
admin'int(10)NOTNULLCOMMENT否为管理员账户1为管理员,0为普通用户,耿认为0',
PRIMARYKEY('user')USINGBTREE
)ENGINE=InnoDBCHARACTERSET=utf8COLLATE=utf8_general_ciROW.FORMAT=Compact;
user
studentid
name
password
admin
「123
|123
123
123123
0
j1234
1234
1234
123123
0
root
root
root
123123
1
INSERTINTO'usertable'VALUES('123','123','123','123',0);
INSERTINTO'usertable'VALUES('root*,'root*,'root*,'123',1);
SETFOREIGN_KEY_CHECKS=1;
ft®库表g
bookid3c9obookrumc
author
prew
priceUdtc
♦■■n字术
《JAVAft序釦球询孩
换2现出版吐
45.00汛1
2k
<«nze>
E工业出加
3150StS
3字术
《计・叔化》
伊DgXPgomJ“坦孑工业出如t
2800STB
4ftZ
MR
■年光彫出或吐
3&5OStS
即恩
3150E
Category
6K
《em构(cms)
砂大竽岀版牡
27.SE
7字术
任厦EH奶.t»;已狰
綺地大孕岀阪牡
40.00E®
0军爭
8字术
9M1
対咄疥倒月大学
32.50E
9字术
tC®EWW
SlMIlkttitttt
47.00m
10J7X
《以»5翌3砲娅厄尔JI
BUHk出CM
3a50E
学术
11字术
《蚊学专姥号沦〉
KeithDevtin
入印曲出扱吐
40.00m
12字天
人出版吐
3600ZBB
13学术
25.50E
14冲
<=»)
或庆岀wt
31.00®S
15
瞬史》
版壮
32-SOEm
科幻
16S9
旅合出版公5)
35.SO
17叔
《芥&3蜘
布1鴨花协
3000阪
18竖济
中国人抵裂蛔之
60.00&i
Dao包下的AdminDao.java:
packageDao;
importjava.sql.*;
importjavax.swing.DOptionPane;
publicclassAdminDao
publicstaticbooleansureuser(Stringuser){
Connectioncon=DB.connectDBO;
PreparedStatementpreSql;
ResultSetrs;
StringsqlStr="select*fromusertablewhereuser=?
"try{
preSql=con.prepareStatement(sqlStr);
preSql.setString(l,user);
rs=preSql.executeQuery();
booleanflag=false;
while(rs.next()){
flag=true;
returntrue;
)
if(!
flag)(
returnfalse;
)
con.close();
returnfalse;
}catch(SQLExceptione)(
returnfalse;
})
publicstaticvoidmodifypass(Stringuser,Stringpassword)
Connectioncon=DB.connectDB();
PreparedStatementpreSql;
StringsqlStr="updateusertablesetpassword=?
whereuser=?
";
try{
preSql=con.prepareStatement(sqlStr);
preSql.setString(l,password);
preSql.setString(2,user);
intok=preSql.executeUpdate();
con.close();
)catch(SQLExceptione){
}}
publicstaticBooleanadduser(Stringuser,Stringstudentid,Stringname.Stringpassword)(
Connectioncon=DB.connectDB();
PreparedStatementpreSql;
StringsqlStr="insertintousertablevalues(?
?
?
?
0)";
try{
preSql=con.prepareStatement(sqlStr);
intok=preSql.executeUpdate();
con.close();
returntrue;
}catch(SQLExceptione)(
JOptionPane.shoivMessageDiatog(null,"用户名已存在"'警告",DOptionPane.MARNING_MESSAGE);
returnfalse;
)
}}
BookDao.java:
packageDao;
importjava.sql.*;
importjava.util.*;
importjavax.swing.*;
importjavax.swing.table.Default!
ableModel;
publicclassBookDao{
publicBookDao(){
}
publicstaticvoidfindcategory(JComboBoxbox)(
Connectioncon=DB.connectDBO;
PreparedStatementpreSql;
ResultSetrs;
StringsqlStr="select*frombookcategory";
try{
preSql=con.prepareStatement(sqlStr);
rs=preSql.executeQuery();
while(rs.next()){
Stringcategory=rs.getString(l);
box.addltem(category);
con.close();
}catch(SQLExceptione)(
〃添加图书
publicstaticvoidaddbook(Stringcategory,Stringbookname,Stringauthor,Stringpress,Stringprice){
Connectioncon=DB.connectDB();
PreparedStatementpreSql;
StringsqlStr="insertinto
booktable(category,bookname,author,press,price,state)values
try{
preSql=con.prepareStatement(sqlStr);
intok=preSql.executeUpdate();
con.close();
)catch(SQLExceptione){
}}
〃修改图书
publicstaticvoidmodifybook(intbookid,Stringcategory,Stringbookname,Stringauthor,Stringpress,Stringstate,Stringprice)(
Connectioncon=DB.connectDB();
PreparedStatementpreSql;
StringsqlStr="updatebooktablesetcategory=?
bookname=?
author=?
press=?
price=?
state=?
wherebookid=
try{
preSql=con.prepareStatement(sqlStr);
preSql.setlnt(7,bookid);
intok=preSql.executeUpdate();
con.close();
)catch(SQLExceptione){
})
〃删除图书
publicstaticvoiddeletebook(intbookid){
Connectioncon=DB.connectDBO;
PreparedStatementpreSql;
StringsqlStr="deletefrombooktablewherebookid=?
"try{
preSql=con.prepareStatement(sqlStr);preSql.setInt(l,bookid);
intok=preSql.executeUpdate();
con.close();
}catch(SQLExceptione)(
})
//显示所有图书
publicstaticvoidallbook(DefaultTableModelmodel){
Connectioncon=DB.connectDB();
Prepa