java编写图书馆管理系统Word文档下载推荐.docx
- 文档编号:17803376
- 上传时间:2022-12-10
- 格式:DOCX
- 页数:64
- 大小:136.42KB
java编写图书馆管理系统Word文档下载推荐.docx
《java编写图书馆管理系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《java编写图书馆管理系统Word文档下载推荐.docx(64页珍藏版)》请在冰豆网上搜索。
Win7、JDK1.7/1.8以及Eclipse集成开发环境。
3、课程设计内容
图书借阅信息管理系统
题目要求:
设计三个类:
图书类、读者类、借阅信息类。
图书类用来存储图书的信息,读者类用来存储读者的信息,借阅信息类用来存储读者借阅图书的信息。
在系统中实现图书信息的添加和查询、读者信息的添加和查询、图书借阅信息的添加和查询。
图书信息可以包括:
书名、图书编号、作者、出版社、出版时间、版次、ISBN、定价等。
读者信息可以包括:
姓名、年龄、性别、借阅证号(读者编号)、单位等。
图书借阅信息可以包括:
读者编号、图书编号、借出时间、应还时间等。
具体设计了AddInforFrame,AddBookFrame,AddFrame,AddListener,SearchListener,LoginListener,OperateFrame,SearchBookFrame,SearchUserFrame,SearchInforFrame,WindowLoad,MainFrame这样我几个类,
3,
((0)这是管理员登录的界面)
(
(1)这是管理员进行操作的界面)
(
(2)这是用户添加的界面)
((3)这是用户查询的界面)
((4)这是管理员将要退出的界面)
4,使用说明:
管理员通过后台登录(用户名admin,密码123456),可以进行读者、图书、借阅信息的添加与查询,以及相关的操作。
四、源程序代码
AddBookFrame.java
importjava.awt.FlowLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.awt.event.WindowAdapter;
importjava.awt.event.WindowEvent;
importjava.io.BufferedReader;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importjava.io.FileReader;
importjava.io.IOException;
importjava.util.regex.Matcher;
importjava.util.regex.Pattern;
importjavax.swing.Box;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JOptionPane;
importjavax.swing.JScrollPane;
importjavax.swing.JTextArea;
importjavax.swing.JTextField;
importjavax.swing.event.DocumentEvent;
importjavax.swing.event.DocumentListener;
publicclassAddBookFrameextendsJFrameimplementsActionListener{
staticintbookcount=0;
JLabelalable;
/*姓名、学号、年龄、性别、学院、专业、年级、班级*/
JLabeluserlable;
JLabelusernumber;
JLabelage;
JLabelsex;
JLabelcollage;
JLabelmajor;
JLabelgrade;
JLabelclass_;
JTextFielduserinput,usernuminput,ageinput,sexinput,collageinput,majorinput,gradeinput,class_input;
JTextAreashowtext;
/*用于显示用户添加的信息域*/
JButtonok;
JButtonreset;
intflag=0;
intflag1=0;
publicAddBookFrame(){
init();
setBounds(400,100,600,600);
setVisible(true);
setResizable(false);
/*addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
intn=JOptionPane.showConfirmDialog(this,"
是否要真的退出添加?
"
"
确认对话框"
JOptionPane.YES_NO_CANCEL_OPTION);
if(n==JOptionPane.YES_OPTION){
this.EXIT_ON_CLOSE;
System.exit(0);
}
});
*/
setDefaultCloseOperation(this.DISPOSE_ON_CLOSE);
}
voidinit(){
alable=newJLabel("
请填写相关信息:
);
userlable=newJLabel("
编号:
usernumber=newJLabel("
书名:
age=newJLabel("
版次:
sex=newJLabel("
定价:
collage=newJLabel("
作者:
major=newJLabel("
出版社:
grade=newJLabel("
出版时间:
class_=newJLabel("
ISBN:
userinput=newJTextField(15);
usernuminput=newJTextField(15);
ageinput=newJTextField(15);
sexinput=newJTextField(15);
collageinput=newJTextField(15);
majorinput=newJTextField(15);
gradeinput=newJTextField(15);
class_input=newJTextField(15);
//设置盒式布局并添加组件
BoxbaseBox,boxV1,boxV2,boxV3,boxV4;
this.setLayout(newFlowLayout());
boxV1=Box.createVerticalBox();
boxV1.add(alable);
boxV1.add(boxV1.createVerticalStrut(30));
boxV1.add(userlable);
boxV1.add(boxV1.createVerticalStrut(15));
boxV1.add(usernumber);
boxV1.add(age);
boxV1.add(sex);
boxV1.add(collage);
boxV1.add(major);
boxV1.add(grade);
boxV1.add(class_);
boxV2=Box.createVerticalBox();
/*boxV2.createVerticalStrut(10);
boxV2.add(boxV2.createVerticalStrut(45));
boxV2.add(userinput);
boxV2.add(boxV2.createVerticalStrut(11));
boxV2.add(usernuminput);
boxV2.add(ageinput);
boxV2.add(sexinput);
boxV2.add(collageinput);
boxV2.add(majorinput);
boxV2.add(gradeinput);
boxV2.add(class_input);
boxV3=Box.createHorizontalBox();
boxV3.add(boxV1);
boxV3.add(boxV2);
boxV4=Box.createHorizontalBox();
ok=newJButton("
确定"
reset=newJButton("
取消"
ok.addActionListener(this);
reset.addActionListener(this);
boxV4.add(ok);
boxV4.add(reset);
baseBox=Box.createVerticalBox();
baseBox.add(boxV3);
baseBox.add(baseBox.createVerticalStrut(20));
baseBox.add(boxV4);
showtext=newJTextArea(9,50);
/*文本域的一些操作*/
showtext.setText("
您新添加的图书信息如下:
add(newJScrollPane(showtext));
showtext.setLineWrap(true);
/*(showtext.getDocument()).addDocumentListener(this);
add(showtext);
this.add(baseBox);
//让输入用户名的文本框获得焦点
userinput.grabFocus();
@Override
publicvoidactionPerformed(ActionEvente){
//TODOAuto-generatedmethodstub
if(e.getSource()==reset){
showtext.setText("
elseif(userinput.getText().isEmpty()||usernuminput.getText().isEmpty()||ageinput.getText().isEmpty()||sexinput.getText().isEmpty()||collageinput.getText().isEmpty()||majorinput.getText().isEmpty()||gradeinput.getText().isEmpty()||class_input.getText().isEmpty()){
JOptionPane.showMessageDialog(this,"
请把信息填写完整!
"
警告对话框"
JOptionPane.WARNING_MESSAGE);
else{
/*此时用户已存在了*/
Stringusernum=userinput.getText();
intb;
bytetom[]=newbyte[1000000];
Filefile=newFile("
C:
\\Book.txt"
try{
FileReaderin=newFileReader(file);
BufferedReaderinTwo=newBufferedReader(in);
Strings=null;
inta;
while((s=inTwo.readLine())!
=null){
if((a=s.indexOf(usernum))!
=-1){
flag=1;
JOptionPane.showMessageDialog(this,"
图书已经存在!
userinput.setText(null);
usernuminput.setText(null);
ageinput.setText(null);
sexinput.setText(null);
collageinput.setText(null);
majorinput.setText(null);
gradeinput.setText(null);
class_input.setText(null);
break;
}
}
}
catch(IOExceptione1){
文件读取失败!
}
if(flag==0){/*没有重复添加图书的情况*/
intn=Integer.parseInt(userinput.getText());
Stringdate1=gradeinput.getText();
/*Stringdate2=majorinput.getText();
StringeL="
[0-9]{4}-[0-1][0-9]-[0-3][0-9]"
;
Patternp=Ppile(eL);
Matchermm=p.matcher(date1);
/*Matchernn=p.matcher(date2)*/;
booleandateFlag=(mm.matches()/*&
&
nn.matches()*/);
if(!
dateFlag){
flag1=1;
JOptionPane.showMessageDialog(this,"
日期格式有误!
gradeinput.setText(null);
/*majorinput.setText(null);
gradeinput.grabFocus();
if(flag1==0){
bookcount++;
/*计数总人数*/
Strings1=userinput.getText();
showtext.append("
\n"
+"
+s1+"
;
Strings2=usernuminput.getText();
+s2+"
Strings3=ageinput.getText();
+s3+"
Strings4=sexinput.getText();
+s4+"
Strings5=collageinput.getText();
+s5+"
Strings6=majorinput.getText();
+s6+"
Strings7=gradeinput.getText();
+s7+"
Strings8=class_input.getText();
+s8+"
intn1=JOptionPane.showConfirmDialog(this,"
是否要真的添加?
if(n1==JOptionPane.YES_OPTION){
/*this.EXIT_ON_CLOSE;
StringpersonInfo=/*"
学号:
+*/s1+"
\r\n"
+/*"
姓名:
+*/s2+"
年龄:
+*/s3+"
/*+"
性别:
*/+s4+"
学院:
*/+s5+"
专业:
+*/s6+"
年级:
+*/s7+"
班级:
*/+s8+"
/*用户所有信息*/
bytetom1[]=newbyte[1000000];
tom1=personInfo.getBytes();
try{
Filef=newFile("
try{
f.createNewFile();
//当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件
}catch(IOExceptione2){
e2.printStackTrace();
FileOutputStreamout=newFileOutputStream(f,true);
/*out.write(tom);
out.write(tom1,0,tom1.length);
/*while((b=in.read(tom,0,10000))!
Strings=newString(tom,0,b);
System.out.println(personInfo);
/*}*/
out.close();
/*弹出添加成功的界面*/
添加成功!
通知对话框"
userinput.setText(null);
usernuminput.setText(null);
ageinput.setText(null);
sexinput.setText(null);
collageinput.setText(null);
majorinput.setText(null);
gradeinput.setText(null);
class_input.setText(null);
catch(IOExceptionex){
JOptionPane.showMessageDialog(this,"
文件写入错误!
/*System.out.println("
FilewriteError"
+ex);
}
catch(Exceptionee){
书编号格式错误!
userinput.grabFocus();
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 编写 图书馆 管理 系统