ImageVerifierCode 换一换
格式:DOCX , 页数:80 ,大小:140.49KB ,
资源ID:9969051      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9969051.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(java编写图书馆管理系统.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

java编写图书馆管理系统.docx

1、java编写图书馆管理系统 面向对象课程设计报告课程设计题目:图书信息管理系统学 院:计算机科学与技术学院 专 业: 软件工程 班 级: 131 学 号: 1308060130 学生姓名: 易榜宇 指导教师: 汪健 2014年7月12日一、课程设计目的及要求1: 课程设计要求面向对象程序设计是一门实践性较强的课程,以实际应用为目的。在课程设计时应注重培养学生的实际操作能力。本课程设计安排了16学时的实验课时,具体要求如下: 1. 学习和理解课程设计题目的基本理论和方法; 2. 掌握实验的实现步骤和关键技术; 3. 准备好实验所需要的资源和文档; 4. 上机实现程序,得到通过调试的正确程序。 5

2、. 根据实验的要求,完成实验报告的word文档。2:课程设计目的面向对象程序设计是软件工程专业的专业基础课,目的是让学生通过对面向对象程序设计语言(例如Java)的学习,全面理解和掌握面向对象程序设计的基本思想、基本概念和基本方法。本课程设计是面向对象程序设计课程的后续实践课程。在本课程设计中,将利用JDK1.7/1.8平台和Eclipse(Netbeans)集成开发环境为实践工具,通过上机实践培养学生分析具体问题、利用面向对象语言工具(Java)解决实际问题的能力,更好地理解和掌握面向对象的思想、概念和方法。二、课程设计实践环境Win7 、JDK 1.7/1.8以及Eclipse集成开发环境

3、。三、课程设计内容1: 图书借阅信息管理系统 题目要求:设计三个类:图书类、读者类、借阅信息类。图书类用来存储图书的信息,读者类用来存储读者的信息,借阅信息类用来存储读者借阅图书的信息。在系统中实现图书信息的添加和查询、读者信息的添加和查询、图书借阅信息的添加和查询。 图书信息可以包括:书名、图书编号、作者、出版社、出版时间、版次、ISBN、定价等。 读者信息可以包括:姓名、年龄、性别、借阅证号(读者编号)、单位等。 图书借阅信息可以包括:读者编号、图书编号、借出时间、应还时间等。2:具体设计了AddInforFrame,AddBookFrame,AddFrame,AddListener,Se

4、archListener,LoginListener,OperateFrame,SearchBookFrame,SearchUserFrame,SearchInforFrame,WindowLoad,MainFrame这样我几个类,3,(0)这是管理员登录的界面) (1)这是管理员进行操作的界面)(2)这是用户添加的界面)(3)这是用户查询的界面)(4)这是管理员将要退出的界面) 4,使用说明: 管理员通过后台登录(用户名admin,密码123456),可以进行读者、图书、借阅信息的添加与查询,以及相关的操作。四、源程序代码AddBookFrame.javaimport java.awt.Fl

5、owLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.FileReader;import java

6、.io.IOException;import java.util.regex.Matcher;import java.util.regex.Pattern;import javax.swing.Box;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.JTextField

7、;import javax.swing.event.DocumentEvent;import javax.swing.event.DocumentListener;public class AddBookFrame extends JFrame implements ActionListener static int bookcount=0; JLabel alable; /*姓名、学号、年龄、性别、学院、专业、年级、班级*/ JLabel userlable; JLabel usernumber; JLabel age; JLabel sex; JLabel collage; JLabel

8、major; JLabel grade; JLabel class_; JTextField userinput,usernuminput,ageinput,sexinput,collageinput,majorinput,gradeinput,class_input; JTextArea showtext;/*用于显示用户添加的信息域 */ JButton ok; JButton reset; int flag=0; int flag1=0; public AddBookFrame() init(); setBounds(400,100,600,600); setVisible(true);

9、 setResizable(false); /* addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) int n=JOptionPane.showConfirmDialog( this, 是否要真的退出添加?,确认对话框, JOptionPane.YES_NO_CANCEL_OPTION); if(n=JOptionPane.YES_OPTION) this.EXIT_ON_CLOSE; System.exit(0); );*/ setDefaultCloseOperation(this.

10、DISPOSE_ON_CLOSE); void init() alable =new JLabel(请填写相关信息:); userlable=new JLabel(编号:); usernumber =new JLabel(书名:); age=new JLabel(版次:); sex=new JLabel(定价:); collage=new JLabel(作者:); major=new JLabel(出版社:); grade=new JLabel(出版时间:); class_=new JLabel(ISBN:); userinput=new JTextField(15); usernuminpu

11、t=new JTextField(15); ageinput=new JTextField(15); sexinput=new JTextField(15); collageinput=new JTextField(15); majorinput=new JTextField(15); gradeinput=new JTextField(15); class_input=new JTextField(15); /设置盒式布局并添加组件 Box baseBox,boxV1,boxV2,boxV3,boxV4; this.setLayout(new FlowLayout(); boxV1=Box.

12、createVerticalBox(); boxV1.add(alable); boxV1.add(boxV1.createVerticalStrut(30); boxV1.add(userlable); boxV1.add(boxV1.createVerticalStrut(15); boxV1.add(usernumber); boxV1.add(boxV1.createVerticalStrut(15); boxV1.add(age); boxV1.add(boxV1.createVerticalStrut(15); boxV1.add(sex); boxV1.add(boxV1.cre

13、ateVerticalStrut(15); boxV1.add(collage); boxV1.add(boxV1.createVerticalStrut(15); boxV1.add( major); boxV1.add(boxV1.createVerticalStrut(15); boxV1.add(grade); boxV1.add(boxV1.createVerticalStrut(15); boxV1.add(class_); boxV2=Box.createVerticalBox(); /*boxV2.createVerticalStrut(10);*/ boxV2.add(box

14、V2.createVerticalStrut(45); boxV2.add(userinput); boxV2.add(boxV2.createVerticalStrut(11); boxV2.add(usernuminput); boxV2.add(boxV2.createVerticalStrut(11); boxV2.add(ageinput); boxV2.add(boxV2.createVerticalStrut(11); boxV2.add(sexinput); boxV2.add(boxV2.createVerticalStrut(11); boxV2.add(collagein

15、put); boxV2.add(boxV2.createVerticalStrut(11); boxV2.add(majorinput); boxV2.add(boxV2.createVerticalStrut(11); boxV2.add( gradeinput); boxV2.add(boxV2.createVerticalStrut(11); boxV2.add(class_input); boxV3=Box.createHorizontalBox(); boxV3.add(boxV1); boxV3.add(boxV2); boxV4=Box.createHorizontalBox()

16、; ok=new JButton(确定); reset=new JButton(取消); 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=new JTextArea(9,50);/*文本域的一些操作*/ sho

17、wtext.setText(您新添加的图书信息如下:); add(new JScrollPane(showtext); showtext.setLineWrap(true); /*(showtext.getDocument().addDocumentListener(this);*/ add(showtext); this.add(baseBox); /让输入用户名的文本框获得焦点 userinput.grabFocus(); Overridepublic void actionPerformed(ActionEvent e) / TODO Auto-generated method stub

18、 if(e.getSource()=reset) showtext.setText(您新添加的图书信息如下:); else if(userinput.getText().isEmpty()|usernuminput.getText().isEmpty()|ageinput.getText().isEmpty()|sexinput.getText().isEmpty()|collageinput.getText().isEmpty()|majorinput.getText().isEmpty()|gradeinput.getText().isEmpty()|class_input.getText

19、().isEmpty() JOptionPane.showMessageDialog(this,请把信息填写完整!, 警告对话框,JOptionPane.WARNING_MESSAGE); else /*此时用户已存在了*/ String usernum=userinput.getText(); int b; byte tom=new byte1000000; File file=new File(C:Book.txt); try FileReader in=new FileReader(file); BufferedReader inTwo=new BufferedReader(in); S

20、tring s=null; int a; while(s=inTwo.readLine()!=null) if(a=s.indexOf(usernum)!=-1) flag=1; JOptionPane.showMessageDialog(this,图书已经存在!, 警告对话框,JOptionPane.WARNING_MESSAGE); userinput.setText(null); usernuminput.setText(null); ageinput.setText(null); sexinput.setText(null); collageinput.setText(null); m

21、ajorinput.setText(null); gradeinput.setText(null); class_input.setText(null); break; catch(IOException e1) JOptionPane.showMessageDialog(this,文件读取失败!, 警告对话框,JOptionPane.WARNING_MESSAGE); if(flag=0)/*没有重复添加图书的情况*/ try int n=Integer.parseInt(userinput.getText(); String date1=gradeinput.getText(); /*St

22、ring date2=majorinput.getText();*/ String eL = 0-94-0-10-9-0-30-9; Pattern p = Ppile(eL); Matcher mm = p.matcher(date1); /*Matcher nn=p.matcher(date2)*/; boolean dateFlag = (mm.matches()/*&nn.matches()*/); if (!dateFlag) flag1=1; JOptionPane.showMessageDialog(this,日期格式有误!, 警告对话框,JOptionPane.WARNING_

23、MESSAGE); gradeinput.setText(null); /*majorinput.setText(null);*/ gradeinput.grabFocus(); if(flag1=0) bookcount+;/*计数总人数*/ String s1=userinput.getText(); showtext.append(n+编号:+s1+;); String s2=usernuminput.getText(); showtext.append(书名:+s2+;); String s3=ageinput.getText(); showtext.append(版次:+s3+;);

24、 String s4=sexinput.getText(); showtext.append(定价:+s4+;+n); String s5=collageinput.getText(); showtext.append(作者:+s5+;); String s6= majorinput.getText(); showtext.append(出版社:+s6+;); String s7=gradeinput.getText(); showtext.append(出版时间:+s7+;); String s8=class_input.getText(); showtext.append(ISBN:+s8

25、+;); int n1=JOptionPane.showConfirmDialog(this, 是否要真的添加?,确认对话框, JOptionPane.YES_NO_CANCEL_OPTION); if(n1=JOptionPane.YES_OPTION) /*this.EXIT_ON_CLOSE;*/ String personInfo=/*学号:+*/s1+rn+/*姓名:+*/s2+rn+/*年龄:+*/s3+rn/*+性别:*/+s4+rn/*+学院:*/+s5+rn+/*专业:+*/s6+rn+/*年级:+*/s7+rn/*+班级:*/+s8+rn;/*用户所有信息*/ byte t

26、om1=new byte1000000; tom1=personInfo.getBytes(); try File f=new File(C:Book.txt); try f.createNewFile(); / 当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件 catch (IOException e2) e2.printStackTrace(); FileOutputStream out=new FileOutputStream(f,true); /*out.write(tom);*/ out.write(tom1,0,tom1.length); /*while(

27、b=in.read(tom,0,10000)!=-1) String s=new String(tom,0,b);*/ System.out.println(personInfo); /*/ out.close(); /*弹出添加成功的界面*/ JOptionPane.showMessageDialog(this,添加成功!, 通知对话框,JOptionPane.WARNING_MESSAGE); userinput.setText(null); usernuminput.setText(null); ageinput.setText(null); sexinput.setText(null)

28、; collageinput.setText(null); majorinput.setText(null); gradeinput.setText(null); class_input.setText(null); catch (IOException ex) JOptionPane.showMessageDialog(this,文件写入错误!, 警告对话框,JOptionPane.WARNING_MESSAGE); /*System.out.println(File write Error+ex);*/ catch(Exception ee) JOptionPane.showMessageDialog(this,书编号格式错误!, 警告对话框,JOptionPane.WARNING_MESSAGE); userinput.setText(null); userinput.grabFocus();

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

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