版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连海事大学
课程设计实验报告
姓名
班级
学号
指导老师
专业班级:电子商务学生姓名:周急敏指导教师(签名):
一二「藻香浚讦函百一
会员信息管理系统
二、本次课程设计应到达的目的
1.通过该题FI的设计,使学生.掌握软件开发过程的问题分析、系统设计、程序编
码、测试等根本方法和技能;
三、本次课程设计任务的主要内容和要求(包括原始数据、技术参数、设计
要求等)
使用窗体等控件构建会员信息管理系统界面.,实现简单的会员信息管理功能,每次录
入完会员信息之后就能实现对其删除,查询,修改等操作。
要求:
1.1人完成
2.功能实现,界面友好
四、进度安排
1.第1天:选题、查阅资料;
2.第2天:确定设计方案:
3.3-8天:方案的实现、调试与验证;
4.9To天:撰写课程设计报告初稿并修改;
五、主要参考文献:
1.《Javas实用教程(第2版)》,郑阿奇,电子工业出版社
2.MSDN
一、应用技术及开发环境
1.JAVA语言及JDK
JDK(JavaDevelopmentKit)是SunMicrosystems针对Java开发员的产品。自从Java推出以来,JDK
已经成为使用最广泛的JavaSDK。JDK是整个Java的核心,包括了Java运行环境、Java工具和Java基础
类库。JDK是学好Java的第一步。而专门运行在x86平台的Jrocket在效劳端运行效率也要比SunJDK好很
多“从SLN的JDK5.0开始,提供了泛型等非常实用的功能,起版本也不断更新,运行效率得到了非常大的
提氤
2.eclipse
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组效
劳,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具
(JavaDevelopmentKit,JDK)。
二、结构设计与结构功能图
1.结构设计
根据对系统进行需求分析,本系统将分为4个模块:
・会员根本信息管理
管理会员根本信息,包括个人信息的添加、修改、删除以及查询。
・会员消费信息管理
管理会员的消费信息,包括消费记录的添加、修改、删除以及查询。
•会员积分信息管理
管理会员积分信息,包括会员积分的添加、修改、删除以及查询。。
2.功能结构图
会员信息管理系统功能结构如图2.1所示。
三、系统实现
该系统由4个模块构成,包括会员信息管理系统主界面模块、会员根本信息管理模块、会员消费信息管理
模块和会员积分信息管理模块。下面分别加以叙述:
①会员信息管理系统主界面模块
图3.1会员信息管理系统主界面
②会员根本信息管理模块
图3.2会员根本信息管理模块的运行界面
③会员消费信息管理模块
图3.3会员消费信息管理模块运行界面
④会员积分信息管理模块
图3.4会员枳分信息管理模块的运行界面
四、系统调试与测试
4.1测试的定义及目的
软件测试就是在软件投入运行之前,对软件需求分析、设计规格说明和编码的最终更审,是保证软件质量的
关键步骤。如果要给软件测试下定义,可以这样讲,软件测试是为了发现错误而执行程序的过程。
测试的目的在于将软件设计时设计者与程序开发者之间理解不一致的地方、功能与需求不一致的地方、不符
合逻辑思维的情况都反映给质量控制部门,由质量控制部门调配需求部门统一做出一个明确解答,再由开发人员
进行修改和补充。
4.2系统功能测试
功能测试主要是测试程序模块是否实现了设计中所要求的功能。功能测试中需要注意的有:
(1)查询功能中,是按会员号进行查询的。每次查询前需要先输入会员号,如果没有,程序运行时会弹出提
示信息窗口,告诉用户揄入会员信息。
(2)录入功能中,需要注意的是前台设置的数值长度是否大于后台数值长度,以及前台和后台的数据结构是
否相符,很多时候录入功能无法实现是由于这些原因。还有就是必须录入的字段的设置时候有误。
(3)测试删除功能中需要注意的是单击〃删除“按钮后,一般会出现提示信息,询问是否确定删除。通常情况
下,我们单击“确认〃按钮查看信息是否被删除掉了,而忽略了单击〃取消〃按钮后程序的反应:这时有可能的是没
有删除,还有一种可能是即便单击了〃取消“按钮,也一样删除了数据。
(4)关于修改功能的测试主要是看修改确认后是否数据真正已被修改了。这是最根本的功能,需要注意的是
看是否能把不应该修改的数据也修改成功了。
4.3系统调试常见错误
1.NullPointerException异常
一般是对一个为NULL值的变量进行操作引起的。为防止这种异常,最好在对变量操作之前检查,看它是否
为NULL值。
2.NumberFoi*matException异常
这是由于数字的格式错误而出现的例外。为了防止出现此类错误,一般必须保证数据格式输入正确。
结束语
经过这次课题的设计并实现,尽管会遇到很多难题,但是让我更加受益的是在这次课题中得到的经验、心得
和锻炼。我发现开发工程的过程其实就是个不断的解决问题的过程,从中也感觉到工程开发的快乐,一个人永远
有学不完的知识,就算是工程开发中的知识点都学了,但在实际的开发过程中仍然会遇到不少问题,遇到问题时
要做到两点:一个是“查”
,一个是“问"。不懂的地方就得要自己找答案,可以从书本、网络中查找解决的答案;再一个就是问周边的同
学。比方,在本科课题的编写代码局部,本人就参考了《java核心技术》,从中得到了图形编程的很多有用的方
法。这次课程的设计给我以前所学的知识做了一个总结,为我深入学习编程做了铺垫。在本课题中存在的缺乏之
处是在所难免的,本人将在H后加于改良。
致谢
在本课题的设计和实现的过程中遇到的不少的难题,我要感谢那些给我带来帮助的书籍和internet,还有
周边的同学们。如果没有他们的帮助,本课题的设计和实现就不会如期顺利完成。还要感谢我们的指导老师给我
们这么多学生的文档认真批改,让我们知道在课程设计与实现的过程中存在的问题。
附录:程序源代码
(1)Menu,java(主窗口)
packageCRM;
importjava.awt.*;
importjava.awt.event.*;
importjava.io.*;
importjava,util.*;
importjavax.swing.*;
importjavax.swing,border.*;
importjava.util.*;
classMenuextendsJFrameimplements.ActionListener{
JButtonCustomerManager=newJButton("会员信息”);
JButtonConsumplionManager=newJBultQn("消费信息”);
JButtonScore=newJButton("会员积分信息");
JMenuBarmb=newJMcnuBarO;//菜单栏
JPdfieljp=newJPanel0;//用来填放了模块
Containercp=getContentPaneO;
Stringusername;
Mnnn(){
)
Menu(Stringusername){
this.username=username;
mb.add(CustomerManager);
mb.add(ConsumptionManagor);
mb.add(Score);
cp.add(mb,"North");
//设置边框
jp.setBorder(BorderFactory.createTi11edBorder(
BordcrFactory.creatcLineBordcr(Color,blue,2),null,
TitiedBorder.CENTER,TitiedBorder.TOP));
jp.setLayout(newBorderLayout());
JLabellabell=newJLabel(newImageicon("4.jpg"));
jp.add(labell);
JLabellabel2=newJLabel(newImageicon("2.jpg"));
jp.add(label2,“South");
JScrolIPanescrolIpane=newJScrolIPane(jp);
cp.add(scrollpane);
Toolkitkit=Toolkit.getDefaultToolkit();
Dimensionscreen=kit.getScreenSizeO;
intx=screen,width;/*取得显示器窗口的宽度*/
inty=screen,height;/*取得显示器窗口的高度*/
setSize(600,600);
intxcenter=(x-600)/2;
intycenter=(y-600)/2;
setLocation(xcenter,ycenter);/*显示在窗口中央*/
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//注册临听器
CustomerManager.addActionListener(this);
ConsumptionManager.addActionListener(this);
Score.addActionListener(this);
publicvoidactionPerformed(ActionEvente){
Stringemd=e.getActionCommandO;
if(cmd.equals("会员信息")){
newCustomerManager();
)
if(cmd.equals("消费信息")){
newConsumptionManager();
)
if(cmd.equals("会员积分信息")){
newScore();
)
publicstaticvoidmain(Strirg[]args){
newMcnu("");
)
)
(2)Score,java(会员积分管理界面)
packageCRM;
importjava.awt.
importjava.awt.event.*;
importjavax.swing.*;
importjava.io.*;
importjava.util.*:
classCustomerlimplementsjava.io.Serializable{
/**
*
*/
privatestaticfinallongserialVersionUID-IL;
Stringnumber,name,lastmonth,thismonth,sex,total;
publicCustomei'l(){
);
publicvoidsetNumber(Stringnumber){
this,number=number;
)
publicStringgetNumber(){
returnnumber;
)
publicvoidsetName(Stringname)(
this,name=name;
)
publicStringgetNameO{
returnname;
)
publicvoidsetlastmonlh(Stringlaslmonth){
this,lastmonth=lastmonth;
)
publicStringgetlastmonth(){
returnlastmonth;
)
publicvoidsetthismonth(Stringthismonth){
this,thismonth=thismonth;
)
publicStringgetthismooth(){
returnthismonth;
)
publicvoidsetSex(Stringsex){
this.sex=sex;
)
publicStringgetSexO{
returnsex;
)
publicvoidsettotal(Stringtotal){
this,total=total;
)
publicStringgettotal(){
returntotal;
)
)
publicclassScoreextendsJFrame{
/**
*
*/
privatestaticfinallongserialVersionUID-IL;
JLabellb=newJLabcl(”录入请先输入记录,查询、删除请先谕入会员号,修改时对查询〃+”内容改后的保
存!”);
JTextField会员号,姓名,上月积分,本月积分,总积分;
JRadioButton男,女;
ButtonGroupgroup=null;
JButton录入,查询,删除,修改,显示;
JPannlpl,p2,p3,p4,p5,r>6,pv,ph:
Customerl会员=null;
Hashtable<String,Customerl》会员散列表=null;
=null;
inOne=null;
ObjectInputStreaminTwo=null;
outOne=null;
ObjectOutputStreamoutTwo=null;
publicScore(){
super(“会员积分信息管理系统“);
会员号=newJTextField(lO);
姓名=newJTextField(lO):
上月积分=newJTextFicld(lO);
本月积分=newJTextField(lO);
总积分=newJTextField(lO);
group=newButtonGroupC;
男=newJRadioBulton("为",true);
女=newJRadioButton("女",false);
group,add(男);
group.add(女);
录入=newJButton("录入");
查询=newJButton("查询");
删除=newJButton("删除”);
修改=newJButton("修改”);
显于=newJButton("显示”);
录入.addActionListoner(newInputAct());
查询.addActionListener(newInquestAct());
修改.addActionListoner(newModifyAct());
删除.addActionl.istener(newDeleteAct());
显示.addActionListener(newShowAct());
修改.setEnabled(false);
pl=newJPanel();
pl.add(newJLabel(*会员号:“,JLabcl.CENTER-,
pl.add(会员号);
p2=newJPanel();
p2.add(newJLabel("姓名:〃,JLabel.ffiVW);
p2.add(姓名);
p3newJPanel();
p3.add(newJLabel(w性别:",JLabel.渤伽);
p3.add(男);
p3.add(女);
p4=newJPanel();
p4.add(newJLabel("上月积分上JLabel.CENTER);
p4.add(上月积分);
p5=newJPanel();
n5.add(newJl.aholC本月积分:",JLahel.CENTER):
p5.add(本月积分);
p6=newJPanel();
p6.add(newJLabel(*总积分:“,JLabel.CENTER);
p6.add(总积分);
pv=newJPanel();
pv.setLayout(newGridLayout(6,1));
pv.add(pl);
pv.add(p2);
pv.add(p3);
pv.add(p4);
pv.add(p5);
pv.add(p6);
ph=newJPanel();
ph.add(录入);
ph.add(查询);
ph.add(修改);
ph.add(删除);
ph.add(显示);
file=newFile("会员积分信息.txt");
会员散列表=newHashtable<String,CustomerlX);
if(!()){
try(
out=new(file);
ObjectOutputStreamobjectOut=newObjectOutputStream(out);
objectOut.writeObject(会员散列表);
objectOut.close();
out.close0;
}catch(lOExceptione){
}
)
Containercon=getContentPaneO;
con.setLayout(newBorderLayout());
con.add(lb,BorderLayout.NORTH);
con.add(pv,BorderLayout.CENTER);
con.add(ph,BorderLayout.SOUTH);
setDefaultCloseOperation;
setBounds(100,50,500,380);
setVisible(true);
)
publicstaticvoidmain(Stringargs[]){
newScore();
)
assInputActimplemantsAetinnl.istnnnr{
publicvoidactionPerforned(ActionEvente){
修改.setEnabled(false);
Stringnumber=
number=会员号.getText();
if(number,length()>0){
try(
inOno=new(file);
inTwo=newObjectInputStream(inOne);
会员散歹U表-(Hashtablc)inTwo.rcadObjcct0;
inOne.closeO;
inTwo.close0:
}catch(Exceptionee){
System.out.printin("创立散列表出现问题!");
}
if(会员散列表.cnnlainsKey(number)){
Stringwarning="该会员信息已存在,请到修改页面修改!
JOptionPane.show)fessageDicilog(n\ill,warning,"警告",
JOptionPane.WARNING_MESSAG玲;
}//endif1
else{
Stringm="该会员信息将被录入!”;
intok=JOptionPane.showConfirmDia/^(nul1,m,“确认”,
JOptionPane.YES_NO_OPTIONt
JOptionPane.QUESTIONJIESSAGI^);
if(ok==JOptionPane.YES_OPTIO^){
Stringname=姓名.getText();
Stringlastmonth=上月枳分.getText();
Stringthismonth=本月积分.getText();
Stringtotal=总积分.getText();
Stringsex=null;
if(男.isSelectedO)(
sex=男.getText();
}else(
sex=女.getText();
)
会员=rewCustomer1();
会员.se(Number(number);
会员.setName(name):
会员.setlastmonth(lastmonth);
会员.setthismonth(thismonth);
会员.settotal(total);
会员.setScx(sex);
try(
outOne=newearn(file);
outTwo=newObjectOutputStream(outOne);
会员散列表.put(number,会员);
out"Two.writeObject(会员散列表);
outTwo.closeO;
outOne.close();
}catch(Exceptionee){
System,ou-printin("输出散列表出现问题!");
)
会员号.setText(null);
姓名.setText(null);
上月积分.setText(null);
本月积分.setText(null);
总积分.setText(null);
)
}//endelsel
}//endifO
else{
Stringwarning=〃必须输入会员号!“;
JOptionPane.shonMessageDialog{wil1,warning,"警告",
JOptionPanc.WARNINGMESSAGE;
}//endelseO
}//endactionPerformed
}//endclass
classInquestActimplementsActionListener{
publicvoidactionPerformed(ActionEvente){
Stringnumber=
number=会员号.getText();
if(number,length()>0){
try(
inOne=new(file):
inTwo=newObjec11nputStream(inOne);
会员散列表二(Hashtable)inTwo.readObject();
inOne.close();
inTwo.closeO;
}catch(Exceptionee){
System.out.printin("散列表有问题!”);
)
if(会员散列表.conlainsKey(number)){
修改.setEnabled(true);
Customer1stu=(Customerl)会员散列表.get(number);
姓名.setText(stu.getName());
上月积分.setText(stu.getlastmonthO);
本月积分.setText(stu.getthismonth());
总积分.setText(stu.gcttotal());
if(stu.getSexO.equals("男")){
男.setSelected(true);
}plSR{
女.setSelected(true);
)
}else{
修改.setEnabled(false);
Siringwarning="该会员号不存在!”;
JOptionPane.showMessageDia/og(nul1,warning,“警告",
JOptionPane.WARNINGJIESSAGf^;
)
}else(
修改.setEnabled(false);
Stringwarning="必须输入会员号!”;
JOptionPane.showMcssagcDialog{r^i\.}.,warning,“警告",
JOptionPane.WARNING.MESSAGE;
)
)
)
classModifyAciimplementsActionListener{
publicvoidactionPerformed(ActionEventc){
Stringnumber=会员号.getText();
Stringname=姓名.getText();
Stringlastmonth=上月积分.getText();
Stringthismonth=本月积分.getText();
Stringtotal=总积分.getText();
Stringsex=null;
if(男.isSelectedO){
sex=男.getText0;
}else{
sex=女.getText0;
)
Customei'l会员=newCustomerl();
会员.setNumber(number);
会员.setName(name);
会员.setlastmonth(lastmonth);
会员.setthismooth(thismonth);
会员.settotal(total);
会员.setSex(sex);
try(
outOne=new(file);
outTwo=newObjectOutputStream(outOne);
会员散列表.put(number,会员);
outTwo.closeO:
outOne.closeO;
会员号.setText(null);
姓名.setText(null);
上月积分.sctTaxt(null):
本月积分.setText(null);
总积分.setText(null);
}catch(Exceptionee){
System,out.printin(“录入修改出现问题!");
修改.setEnabled(false);
)
)
)
classDeleteActimplementsActionListener{
publicvoidactionPerforned(ActionEvente){
修改.setEnabled(false);
Stringnumber=会员号.getText();
if(number,length()>0){
try{
inOne=new(file);
inTwo=newObjectlnputStream(inOne);
会员散列表二(Hashtablc)inTwo.rcadObjcctO;
inTwo.closeO;
inOne.closeO;
catch(Exceptionee)(
)
if(会员散列表.conlainsKey(number)){
Customerlstu=(Customei'l)会员散列表.get(number);
姓名.setText(stu.getNameO);
上月积分.setText(stu.getlastmonthO);
本月积分.setText(stu.getthismonthO);
总积分.setText(stu.gettotal());
if(stu.getSex().equals("男")){
男.setSelected(true);
}else{
女.setSelected(true);
)
)
Stringm="确定要删除该会员的记录吗?”;
intok=JOptionPane
.showConfirmDia7c>g(nu11,m,“确认”,
JOptionPane.YES_NO_OPTIONt
JOptionPane.QUESTIONJfESSACE);
if(ok==JOptionPane.YES_0PTI02{
会员散列表.remove(number);
try{
outOne=new(file);
outTwo=newObjectOutputStream(outOne);
outTwo.writeObject(会员散列表);
outTwo.(ln<?n():
outOne.close();
会员号.setText(null);
姓名.setText(null);
上月积分.setText(null);
本月积分.setText(null);
总积分.setText(null);
}catch(Exceptionee){
System,out.printin(cc);
)
}elseif(ok==JOptionPane.NO_OPTIO!^){
会员号.setText(null);
姓名.setText(null);
上月积分.setText(null);
本月积分.setText(null);
总积分.setText(null);
}else{
Stringwarning="该会员不存在!”;
JOptionPane.showMessageDia7og(nul1,warning,‘警告”,
JOptionPane.WARNINGJfESSAGE);
)
}else{
Stringwarning=〃必须输入会员号!”;
JOptionPane.sho\iMessageDialog[.n^l\,warning,“警告",
JOptionPane.WARN1NG_MESSAGE;
}
}
)
classShowAciimplementsActionListener{
publicvoidactionPerforned(ActionEvente){
newCustomcrShow(file);
}
)
classCustomerShowextendsJDialog{
/**
*
*/
privatestaticfinallongserialVersionUID=IL;
Hashtablc会员散列表=null;
JTextArea显示=null;
inOne=null;
ObjectInputStreaminTwo=null;
=null;
publicCustomnrShowO{
super(newJFrame(),”显示对话框“);
this.file=file;
显示=newJTextArea(16,30);
try{
inOne=new(file);
inTwo=newObjectInputStream(inOne);
会员散列表=(Hashtable)inTwo.roadObjcctO;
inTwo.closeO;
inOne.close();
}catch(Exceptionee){
}
if(会员散列表.isEmpLy())
显示.append("M前还没有会员的信息记录!\n");
else{
显示.setText("会员号姓名性别上月积分本月积分总积分\n");
for(Enumerationenm=会员散列表.elements。;enm.hasMoreElementsO;){
Customer!stu=(Customer!)enm.nextElement();
Stringsex=
if(stu.getSex().equals("男”))
sex=〃男一
else
sex=女;
Stringstr=stu.getNumber()++stu.getNameO
+“+sex+“+stu.getlastmonth()
++stu.getthismonthO
++stu.geltotal()+“\n";
显小.append(str);
)
}
JScrollPanescroll=newJScrollPane(显示);
Containercon=getContentPane();
con.add("Center”,scroll);
con.validate();
setVisible(true);
setBounds(200,200,400,300);
addWindowlJstener(newWindowAdapter(){
publicvoidwindowclosing(WindowEvcntc){
setVisible(false);
)
});
}
)
)
(3)CustomerManager.java(会员根本信息管理)
packageCRM;
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
importjava.io.*;
importjava.util.*;
classCustomerimplementsjava.io.Serializable{
Stringnumber,name,address,telephone,borth,sex;
publicCustomer(){
};
publicvoidsetNumber(Stringnumber){
this,number=number;
)
publicStringgetNumber(){
returnnumber;
)
publicvoidsetName(Stringname){
this,name=name;
}
publicStringgetName(){
returnname;
}
publicvoidsetaddress(Stringaddress){
this,address=address;
)
publicStringgetaddress(){
returnaddress;
)
publicvoidsettelephone(Stringtelephone){
this,telephone=telephone;
}
publicStringgettelephone(){
returntelephone;
}
publicvoidsetBorth(Stringborth){
this.horth=berth:
)
publicStringgetBorthO{
returnborth;
)
publicvoidsetSex(Stringsex){
this.sex=sex;
)
publicStringgetSexO{
returnsex;
}
)
publicclassCustomerManagerextendsJFrame{
JLabellb=newJLabel(”录入请先输入记录,查询、删除请先输入会员号,修改时对查询"+”内容改后的保
存!”);
JFextField会员号,姓名,家庭地址,电话号码,出生;
JRadioButton男,女;
ButtonGroupgroup=null;
JButton录入,查询,删除,修改,显示;
JPanelpl,p2,p3,p4,p5,p6,pv,ph;
Customer会员=null;
Hashtable会员散列表=null;
=null;
inOne=null;
ObjectInputStreaminTwo=null;
□utOne=null;
ObjectOutputStreamoutTwo=null;
publicCustomerManager(){
super("会员根本信息管理系统“);
会员号=newJTextField(lO);
姓名=newJTextField(lO);
家庭地址=newJTextField(lO);
电话号码=newJTextField(lO);
出生=newJTextField(lO);
group=newButtonGroup();
男=newJRadioButton("男",true);
女=newJRadioButton("女",false);
group,add(男);
group,add(女);
录入=newJButton("录入");
查询=newJButton("查询');
删除=newJButton("删除");
修改=newJButton("修改");
显示=newJRiittcn("显示');
录入.addActionListener(newInputAct());
查询.addActionListener(newInquestAct0);
修改.addActionListener(newModifyAct());
删除.addActionListener(newDeleteAct());
显示.addActionListener(newShowAct());
修改.setEnabled(false);
pl=newJPanel();
pl.add(newJLabel("会员号:”));
pl.add(会员号);
p2=newJPanel();
p2.add(newJLabel("姓名:*));
p2.add(姓名);
p3=newJPanel();
p3.add(newJLabel("性别:"));
p3.add(男);
p3.add(女);
p4=newJPanel();
p4.add(newJLabel("家庭地址:",JLabel.CENTER));
p4.add(家庭地址);
p5=newJPanel();
p5.add(newJLabel("电话号码:",JLabel.CENTER));
p5.add(电话号码);
p6=newJPanel();
p6.add(newJLabel("出生::JLabel.CENTER));
p6.add(出生);
pv=newJPanel();
pv.setLayout(newGridLayout(6,1));
pv.add(pl);
pv.add(p2);
pv.add(p3);
pv.add(p4);
pv.add(p5);
pv.add(p6);
ph=newJPanel();
ph.add(录入);
ph.add(查询);
ph.add(修改);
ph.add(删除);
ph.add(显示);
file=newFile("会员信息.txt");
会员散列表=newHashtableO;
if(!()){
try(
out=new(file);
ObjectOutputStreamobjectOut=newObjectOu:putStream(out);
objectOut.writeObject(会员散列表);
objectOut.close0;
out.clnsft():
}catch(lOExceptione){
)
)
Containercon=getContentPane();
con.setLayout(newBorderLayout());
con.add(lb,BorderLayout.NORTH);
con.add(pv,BorderLayout.CENTER);
con.add(ph,BorderLayout.SOUTH);
sctDcfaultClo3c0pcration(EXIT_0N_CL0SE);
setBounds(100,50,500,380);
setVisible(true);
}
publicstaticvoidmain(Stringargs口){
newCustomerManager();
)
classInputActimplementsActionListener{
publicvoidactionPerforned(ActionEvente){
修改.setEnabled(false);
Stringnumber=
number=会员号.getTaxt();
if(number,length()>0){
try(
inOne=new(file);
inTwo=newObjectlnputStream(inOne);
会员散列表=(Hashtable)inTwo.readObject();
inOne.close();
inTwo.close();
}catch(Exceptionee){
System.out.printin("创立散列表出现问题!");
)
if(会员散列表.containsKey(number)){
Stringwarning="该会员信息已存在,请到修改页面修改!”;
JOptionPane.showMessageDialog(null,warning,“警告",
JOptionPane.WARNING_MESSAGE);
}//endifl
else{
Stringm="该会员信息将被录入!”;
intok=JOptionPeine.showConfirmDialog(null,m,“确认”,
JOptionPane.YES_NO_OPTION,
JOptionPane.QUESTION_MESSAGE);
if(ok==JOptionPane.YES_0PTI0N){
Stringname=姓名.getText();
Stringaddress=家庭地址.getText();
Stringtelephone=电话号码.getText();
Stringborth=出生.getText();
Stringsax=mil1;
if(男.isSelectedO){
sex=男.getText();
}else{
sex=女.getText();
)
会员=newCustomer();
会员.setNumber(number);
会员.setName(name);
会员.setaddress(address);
会员.settelephone(telephone);
会员.setBorth(borth);
会员.setSex(sex);
try(
outOne=new(file);
outTwo=newObjectOutputStream(outOne);
会员散列表.put(number,会员);
outTwo.writeObject(会员散列表);
outTwo.close();
outOne.close();
}catch(Exceptionee){
System.out.printin("输出散列表出现问题!”);
)
会员号.setText(null);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年宁夏高职单招语文考试真题(含答案)
- 2026年四川省广安市重点学校高一入学数学分班考试试题及答案
- 太原单招面试题及答案
- 急诊急救学试题及答案
- 吉林省延吉市第三高级中学2025-2026学年高二第二学期期末英语试题(文字版含答案)
- 2026年四川省攀枝花市高考临考冲刺语文试卷含解析
- 粉色卡通风感恩主题班会(带音乐)
- 宜阳县2025届数学四下期末学业水平测试试题含答案解析
- 人教版高三历史一轮三国两晋南北朝政权更迭民族交融专项预习 新学期预科精讲课件
- 南充市蓬安县2025届数学四年级下学期期末学业质量监测试题含答案解析
- 压密注浆地基施工工艺方案
- 中药湿敷教学课件
- T-CTES 1053-2022 抗病毒抗菌功能纺织品
- 公务员常识4000题
- 2025年及未来5年中国汽车救援行业发展运行现状及投资战略规划报告
- 2025年抗肿瘤药物处方考核试题及答案
- 2024年新疆生产建设兵团兴新职业技术学院公开招聘辅导员笔试题含答案
- T-CFLP 0016-2023《国有企业采购操作规范》【2023修订版】
- 无人机足球课件
- (高清版)DBJ∕T 13-318-2025 《建筑施工盘扣式钢管脚手架安全技术标准》
- 基于贝叶斯优化的同步EEG和MEG的组合源定位算法设计
评论
0/150
提交评论