java开发图书管理系统,用文件存储数据_第1页
java开发图书管理系统,用文件存储数据_第2页
java开发图书管理系统,用文件存储数据_第3页
java开发图书管理系统,用文件存储数据_第4页
java开发图书管理系统,用文件存储数据_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一:注册界面及代码:/* * bighomeworkcs2011z.libraryregisteframe.javaregisteframe苏州科技学院,计算机z1111,徐磊2013-11-13下午6:39:12 */package cs2011z.library;/* * author administrator * */import java.awt.dimension;import java.awt.gridlayout;import java.awt.toolkit;import java.awt.event.actionevent;import java.awt.event.act

2、ionlistener;import java.util.vector;import javax.swing.jbutton;import javax.swing.jframe;import javax.swing.jlabel;import javax.swing.joptionpane;import javax.swing.jpanel;import javax.swing.jpasswordfield;import javax.swing.jtextfield;import javax.swing.border.bevelborder;import javax.swing.border.

3、compoundborder;/* * author administrator * registeframe */public class registeframe extends jframe/* * 注册界面 */private static final long serialversionuid = 1l;/控件显示文件信息final string username=用 户 名:;final string password=密 码:;final string passwordok=确认密码:;final string commit=提交;final string cancel=取消;f

4、inal string null=;/网格布局行、列final int row=4;/行final int col=2;/列/窗体控件定义private jlabel lblusername;/此标签用于显示用户名private jlabel lblpassword;/此标签用于显示密码private jlabel lblpasswordok;/此标签用于显示确认密码private jtextfield txtusername;/此文本框用于用户输入注册的用户名private jpasswordfield txtpassword;/此密码框用于用户输入注册密码 private jpasswor

5、dfield txtpasswordok;/此密码框用于用户输入确认密码private jbutton btncommit;/按钮用于提交注册信息private jbutton btncancel;/按钮用于取消/用户列表public vector stvector=new vector();/窗体高宽设定final int width=600;final int height=400;/registeframe初始化suppresswarnings(unchecked)public registeframe(object obj,string title)super(title);/设置窗体

6、标题stvector =(vector)obj;/uservecsetsize(width,height);/窗体显示大小设置setvisible(true);setdefaultcloseoperation(jframe.dispose_on_close);/窗体关闭dimension screensize = toolkit.getdefaulttoolkit().getscreensize(); dimension framesize = this.getsize(); this.setlocation( (screensize.width - framesize.width) / 2,

7、 (screensize.height - framesize.height) / 2);init();/初始化/窗体初始化:增加控件public void init()/网格布局:32getcontentpane().setlayout(new gridlayout(row,col);/创建相应的控件lblusername=new jlabel(username);txtusername=new jtextfield();lblpassword=new jlabel(password);txtpassword=new jpasswordfield();lblpasswordok=new jl

8、abel(passwordok);txtpasswordok=new jpasswordfield();btncommit =new jbutton(commit);btncancel =new jbutton(cancel);/设置控件属性lblusername.sethorizontalalignment(0);/用户名居中显示lblusername.setborder(new compoundborder(null, new bevelborder(bevelborder.raised);/显示用户名:标签边框设置txtusername.setborder(new bevelborder

9、(bevelborder.lowered);/用户名文本本框边框lblpassword.sethorizontalalignment(0);/密码文字居中显示lblpassword.setborder(new compoundborder(null, new bevelborder(bevelborder.raised);/显示口令:标签边框设置txtpassword.setborder(new bevelborder(bevelborder.lowered);/密码框边框lblpasswordok.sethorizontalalignment(0);/确认密码居中显示lblpasswordo

10、k.setborder(new compoundborder(null, new bevelborder(bevelborder.raised);/显示确认密码:标签边框设置txtpasswordok.setborder(new bevelborder(bevelborder.lowered);/确认密码框边框/增加监听器/确定按钮btncommit.addactionlistener( new actionlistener() public void actionperformed(actionevent e)string username=txtusername.gettext().tri

11、m();/获取用户输入用户名string password=new string(txtpassword.getpassword().trim();/获取户输入的密码string passwordok=new string(txtpasswordok.getpassword().trim();boolean flag=true;char username=username.tochararray();for(char ch:username)if(ch=a&ch=a&ch=0&ch=9)flag=true;elseflag=false;if(flag)if(pareto(passwordok)

12、!=0)/注册失败 joptionpane.showmessagedialog( null, 两次密码不一致!, 注册失败, joptionpane.information_message );elseuser userregiste=new user(username,password);/创建一个用户对象stvector.add(userregiste);/obj.add();/注册成功 joptionpane.showmessagedialog( null, 用户名:+username+rn+密码:+password, 注册成功, joptionpane.information_mess

13、age ); dispose(); logonframe logon =new logonframe(stvector,用户登录); logon.setvisible(true);else/注册失败 joptionpane.showmessagedialog( null, 用户名不符合要求,请输入只有rn英文字母和数字组成的字符串。, 注册失败, joptionpane.information_message ););/取消按钮btncancel.addactionlistener(new actionlistener() public void actionperformed(actione

14、vent e) dispose(););/增加相应控件getcontentpane().add(lblusername);getcontentpane().add(txtusername);getcontentpane().add(lblpassword);getcontentpane().add(txtpassword);getcontentpane().add(lblpasswordok);getcontentpane().add(txtpasswordok);jpanel jp1 = new jpanel();jpanel jp2 = new jpanel();jp1.add(btnco

15、mmit);jp2.add(btncancel);getcontentpane().add(jp1);getcontentpane().add(jp2);public static void main(string args)registeframe frame =new registeframe(new vector(),用户注册);frame.setvisible(true);二:登录界面及代码。/* * bighomeworkcs2011z.librarylogonframe.javalogonframe苏州科技学院,计算机z1111,徐磊2013-11-15下午6:40:25 */pa

16、ckage cs2011z.library;/* * author administrator * */import java.awt.dimension;import java.awt.gridlayout;import java.awt.toolkit;import java.awt.event.actionevent;import java.awt.event.actionlistener;import java.util.vector;import javax.swing.jbutton;import javax.swing.jcheckbox;import javax.swing.j

17、frame;import javax.swing.jlabel;import javax.swing.joptionpane;import javax.swing.jpanel;import javax.swing.jpasswordfield;import javax.swing.jtextfield;import javax.swing.border.bevelborder;import javax.swing.border.compoundborder;/* * author administrator * logonframe */public class logonframe ext

18、ends jframe/* * 登录控件 */private static final long serialversionuid = 1l;/控件显示文件信息final string username=用户名:;final string password=密 码:;final string ok=确定;final string cancel=取消;final string null=;/网格布局行、列final int row=4;/行final int col=2;/列/窗体控件定义private jlabel lblusername;/此标签用于显示用户名private jlabel l

19、blpassword;/此标签用于显示密码private jtextfield txtusername;/此文本框用于用户输入登录用户名private jpasswordfield txtpassword;/此密码框用于用户输入登录密码private jbutton btnok;/按钮用于登录private jbutton btncancel;/按钮用于取消private jcheckbox chkmpwd;/记住密码private jcheckbox chkaotulogon;/自动登录/用户列表public vector stvector;/窗体高宽设定final int width=60

20、0;final int height=400;/logonframe初始化suppresswarnings(unchecked)public logonframe(object obj,string title)super(title);/设置窗体标题stvector =(vector)obj;setsize(width,height);/窗体显示大小设置setvisible(true);setdefaultcloseoperation(jframe.dispose_on_close);/窗体关闭dimension screensize = toolkit.getdefaulttoolkit(

21、).getscreensize(); dimension framesize = this.getsize(); this.setlocation( (screensize.width - framesize.width) / 2, (screensize.height - framesize.height) / 2);init();/初始化/窗体初始化:增加控件public void init()/网格布局:32getcontentpane().setlayout(new gridlayout(row,col);/创建相应的控件lblusername=new jlabel(username)

22、;txtusername=new jtextfield();lblpassword=new jlabel(password);txtpassword=new jpasswordfield();btnok =new jbutton(ok);btncancel =new jbutton(cancel);chkmpwd =new jcheckbox(记住密码);chkaotulogon=new jcheckbox(自动登录);/设置控件属性lblusername.sethorizontalalignment(0);/用户名居中显示lblusername.setborder(new compoundb

23、order(null, new bevelborder(bevelborder.raised);/显示用户名:标签边框设置txtusername.setborder(new bevelborder(bevelborder.lowered);/用户名文本本框边框lblpassword.sethorizontalalignment(0);/密码居中显示lblpassword.setborder(new compoundborder(null, new bevelborder(bevelborder.raised);/显示密码:标签边框设置txtpassword.setborder(new beve

24、lborder(bevelborder.lowered);/密码框边框chkmpwd.sethorizontalalignment(0);chkaotulogon.sethorizontalalignment(0);/增加监听器/确定按钮btnok.addactionlistener( new actionlistener() public void actionperformed(actionevent e)string username=txtusername.gettext().trim();/获取用户输入用户名string password=new string(txtpassword

25、.getpassword().trim();/获取户输入的密码user userlogon=new user(username,password);/创建一个用户对象boolean flag=false;/存在标记/用循环查询用户名和密码是否存在for(user user:stvector)/if(user.equals(userlogon)if(user.getusername().trim().compareto(userlogon.getusername().trim()=0&user.getpassword().trim().compareto(userlogon.getpasswor

26、d().trim()=0)flag=true; if(flag) /登录成功 joptionpane.showmessagedialog( null, 用户名:+userlogon.getusername()+rn用户登录成功!, 登录成功, joptionpane.information_message ); dispose(); alllayoutdemo demo =new alllayoutdemo(); demo.setlayout(); demo.setvisible(true); else /登录失败 joptionpane.showmessagedialog( null, 用户

27、名或口令错!请重新输入!,/提示信息 登录失败,/提示信息 joptionpane.information_message ); txtusername.settext(null);/用户名文本框设置为空 txtpassword.settext(null);/口令密码框设置为空 txtusername.setfocusable(true);/使其获得焦点 );/取消按钮btncancel.addactionlistener(new actionlistener() public void actionperformed(actionevent e) dispose(););/增加相应控件get

28、contentpane().add(lblusername);getcontentpane().add(txtusername);getcontentpane().add(lblpassword);getcontentpane().add(txtpassword);getcontentpane().add(chkmpwd);getcontentpane().add(chkaotulogon);jpanel jp1 = new jpanel();jpanel jp2 = new jpanel();jp1.add(btnok);jp2.add(btncancel);getcontentpane()

29、.add(jp1);getcontentpane().add(jp2);public static void main(string args)vector stvector=new vector ();stvector.add(0,new user(admin,123456);stvector.add(0,new user(xl,123456);stvector.add(1,new user(tom,123456);stvector.add(2,new user(jack,123456);stvector.add(3,new user(david,123456);logonframe fra

30、me = new logonframe(stvector,用户登录);frame.setvisible(true);三:登录主界面及代码。/* * cs2011z.library苏州科技学院,计算机z1111.徐磊2013年11月5日alllayoutdemo.java */package cs2011z.library;/* * author administrator * */import javax.swing.*;import javax.swing.event.*;import java.awt.*;import java.awt.event.*;import java.util.*

31、;public class alllayoutdemo extends jframe implements actionlistener/创建控件private jtextarea tacollect;private jlabel text = new jlabel(图书详细信息);private jlabel text1 = new jlabel(排序后结果输出);private jmenubar jmb = new jmenubar();private jmenu helpmenu = new jmenu(帮助);private jmenu listmenu = new jmenu(排序)

32、;private jmenu datamenu = new jmenu(数据操作);/private jbutton btnsearch = new jbutton(查找数据);private jbutton btninsert = new jbutton(插入数据);private jbutton btndelete = new jbutton(删除数据);/private container container = getcontentpane();private bookdata list = new bookdata1000;private dataoperate op = new d

33、ataoperate();private string lib = new string1000;private int date = new int 10004;private jmenuitem exititem = new jmenuitem(退出, t);private jmenuitem helpitem = new jmenuitem(帮助, h);private jmenuitem numlistitem = new jmenuitem(按图书号排序, n);private jmenuitem insertitem = new jmenuitem(插入数据,i);private

34、jmenuitem searchitem = new jmenuitem(查找数据,s);private jmenuitem deleteitem = new jmenuitem(删除数据,d);private jmenuitem changeitem = new jmenuitem(修改数据,c);jlist book;/无参构造函数,实现对图形界面的初始化public alllayoutdemo()super(图书管理信息系统);this.setsize(600,750);this.setresizable(false);this.setdefaultcloseoperation(jfra

35、me.exit_on_close);/主方法/public static void main(string args)/alllayoutdemo frame = new alllayoutdemo();/frame.setlayout();/frame.show();/布局设计public void setlayout()dataoperate op = new dataoperate();op.readdatabase();string string;string lib = new string1000;jlist book = new jlist(lib);container.setl

36、ayout(null);container.add(text);text.setbounds(220,10,200,25);for(int i = 1;i = op.getbookcount();i+)listi = op.r(i);string = 图书号: + listi.number + 图书名: + + 作者:+listi.author+ 图书价格:+listi.price+ 到馆时间: + listi.ltime + 借出时间: + listi.otime;libi = string; / jscrollpane myscrollpane=new jscroll

37、pane();myscrollpane.setbounds(10,40,570,360); container.add(book);myscrollpane.getviewport().add(book,null);this.getcontentpane().add(myscrollpane);book.setselectionmode(listselectionmodel.single_selection);this.setjmenubar(jmb);jmb.add(datamenu);jmb.add(listmenu);jmb.add(helpmenu);datamenu.add(inse

38、rtitem);datamenu.add(deleteitem);datamenu.add(searchitem);datamenu.add(changeitem);changeitem.setaccelerator(keystroke.getkeystroke(keyevent.vk_c, inputevent.ctrl_mask);insertitem.setaccelerator(keystroke.getkeystroke(keyevent.vk_i, inputevent.ctrl_mask);deleteitem.setaccelerator(keystroke.getkeystr

39、oke(keyevent.vk_d, inputevent.ctrl_mask);searchitem.setaccelerator(keystroke.getkeystroke(keyevent.vk_s, inputevent.ctrl_mask);/创建事件监听器insertitem.addactionlistener(this);deleteitem.addactionlistener(this);searchitem.addactionlistener(this);changeitem.addactionlistener(this);listmenu.add(numlistitem)

40、;numlistitem.setaccelerator(keystroke.getkeystroke(keyevent.vk_n, inputevent.ctrl_mask);numlistitem.addactionlistener(this);helpmenu.add(helpitem);helpmenu.add(exititem);helpitem.setaccelerator(keystroke.getkeystroke(keyevent.vk_h, inputevent.ctrl_mask);exititem.setaccelerator(keystroke.getkeystroke

41、(keyevent.vk_t, inputevent.ctrl_mask);exititem.addactionlistener(this);helpitem.addactionlistener(this);public void setlistlayout()int i;searchlayoutdemo search=new searchlayoutdemo();string string;/加载组件/container.add(text1);text1.setbounds(220,420,200,25);book = new jlist(lib); jscrollpane myscroll

42、pane = new jscrollpane();myscrollpane.setbounds(10,450,570,150); container.add(book);myscrollpane.getviewport().add(book,null);this.getcontentpane().add(myscrollpane);book.setselectionmode(listselectionmodel.single_selection);/for(i = 1;i = op.getbookcount();i+)/if(listi.otime!=null)string = 图书号: +

43、listi.number + 图书名: + + 作者:+listi.author+ 图书价格:+listi.price+ 到馆时间: + listi.ltime + 借出时间: + listi.otime;libi = string; /else/string = 图书号: + listi.number + 图书名: + +/ 作者:+listi.author+ 图书价格:+listi.price+ / 到馆时间: + listi.ltime;/libi = string; /public void chartoint(string data,int

44、 i)int a,b,c;a=data.indexof(.);b=data.indexof(-);c=data.indexof(:);datei0 = integer.parseint(data.substring(0,a);datei1 = integer.parseint(data.substring(a+1,b);datei2 = integer.parseint(data.substring(b+1,c);datei3 = integer.parseint(data.substring(c+1,data.length();/响应事件public void actionperformed

45、(actionevent e) int i,j; int index; bookdata temp; dataoperate op = new dataoperate(); int da = new int14; /numlistitem事件 if(e.getsource() = numlistitem) for(i = 1;i = 499;i+)libi = ; /排序 for(i = 1;i = op.getbookcount();i+) for(j = 1;j = 0) temp = listj; listj = listj+1; listj+1 = temp; this.setlist

46、layout(); this.setvisible(true);/ this.show(); /1.searchitem事件,调用searchlayoutdemo方法 if(e.getsource() = searchitem) dispose(); searchlayoutdemo window1 = new searchlayoutdemo();window1.setlayout();/window1.show();window1.setvisible(true); /2. if(e.getsource()=insertitem) dispose(); insertlayoutdemo window2=new insertlayoutdemo();window2.setlayout();window2.setvisible(true);/window2.show(); /3. if(e.getsource() = deleteitem) dispose(); deletelayoutdemo window3 = new deletelayoutdemo(); window3.setlayout(); window3.setvisible(true);/ window3.show(); /4. if(e.ge

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论