客房管理系统课程设计报告样本_第1页
客房管理系统课程设计报告样本_第2页
客房管理系统课程设计报告样本_第3页
客房管理系统课程设计报告样本_第4页
客房管理系统课程设计报告样本_第5页
已阅读5页,还剩99页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

课程设计院别:信息科学与电气工程学院__班级:计算141____________姓名:___吴刚___________学号:___________指引教师:张岳________________设计地点:实验楼307__________时间:年9月4日___至年9月16日课程设计任务书题目数据库课程设计客房管理系统系(部)信息科学与电气工程学院专业计算机科学与技术班级计算141学生姓名吴刚学号09月04日至09月16日共2周指引教师(签字)院长(签字)09月17日一、设计内容及规定内容:客房各种信息,涉及客房类别、当前状态、价格等;客房信息查询和修改,例如按房间号查询住宿状况。以及退房、订房、换房等信息修改。对查询、记录成果输出。通过本次课程设计让学生可以综合运用所学关系数据库原理知识解决并能设计一种实际问题,进一步掌握数据库原理有关理论和数据库设计实现过程,进一步提高学生分析问题和解决问题能力以及学生动手能力。规定:1.对各个系统进行系统功能需求分析2.数据库设计分析阶段,进行详细数据库需求分析,进行概念数据库设计,画出数据库E-R图(局部和整体E-R图)3.设计出详细逻辑数据库构造,将各个实体和联系转化为相应二维表即关系模式,指定各个关系主核心字和外部核心字,并对各个关系约束加以限定4.通过公司管理器或是查询分析器实现各个二维关系(建议最佳用SQL代码实现),规定建立有关索引5.依照系统功能需求设计相应查询视图6.规定依照系统功能需求建立存储过程7.依照功能需求建立相应触发器以保证数据一致性8.通过建立顾客和权限分派实现数据库一定安全性,考虑数据库备份与恢复(此内容选作)二、设计原始资料1、《数据库原理》2、课程设计题目:客房管理系统三、设计完毕后提交文献和图表1.计算阐明书某些2.图纸某些:课程设计报告格式(附后):封面、题目、时间地点、目及规定、内容、详细环节和代码编写过程(绘制出拓扑图)、总结。设计报告格式:设计题目设计时间、地点设计目设计规定设计思路(规定有文字描述,并画出流程图)(占报告40%)设计过程(规定有文字阐明实现过程,并对相应代码添加注释)(占报告40%)设计总结(分析程序得与失)心得体会封面格式如下(一定要有封面):四、进程安排教学内容学时地点备注分派任务与分组1天实验室系统功能需求分析1天实验室数据库需求分析1天实验室逻辑数据库构造2天实验室查询视图、存储过程、触发器1天实验室编程2天实验室程序测试和成果验收2天实验室五、重要参照资料1.《数据库系统原理与应用》沈祥玖张岳中华人民共和国水利水电出版社2.《SQLServer数据库配备与管理指南》刘奎

清华大学出版社3.《SQL与关系数据库理论》周成兴清华大学出版社信息科学与电气工程学院课程设计成绩评估用表平时成绩(30%)答辩成绩(40%)报告成绩(30%)总成绩注:本表可依照实际状况修改。目录TOC\o"1-3"\h\u前言 -1-1.问题描述 -2-1.1背景 -2-1.2功能规定 -2-2.需求分析 -3-2.1需求分析 -3-2.1.1解决对象 -3-2.1.2系统功能分析 -3-2.1.3安全性和完整性规定 -4-2.2系统功能模块图 -5-2.3数据字典 -6-3.概念构造设计 -7-3.1E-R图 -7-3.2实体及属性定义 -7-4.物理构造设计 -8-5.触发器设计 -8-6.数据库实行和维护 -9-6.1建立数据库、数据表、索引 -9-6.1.1.建立数据库 -9-6.1.2.建立数据表 -9-6.1.3.建立索引 -10-7.存在问题总结 -11-致谢 -11-8.重要参照资料 -11-附录 -12-前言随着国内经济迅速发展和假日经济浮现,宾馆酒店业竞争愈来愈激烈。要想在竞争中获得优势,必要在经营管理、产品服务等方面提高服务管理意识。而对对酒店经营状况去决定行作用是酒店管理。如何运用先进管理手段,提高酒店管理水平,是每一家酒店管理者所面临重要课题。简朴服务原则已经不是制胜锦囊,只有做到最细微之处才有机会让顾客体会到酒店服务长处,而精准、快捷、周全往往就是最基本成功要素。因而,采用全新计算机网络和管理系统,将成为提高酒店管理效率,改进服务水准重要手段之一。信息与科技在酒店管理与当代化建设中显现出越来越重要地位。在某种意义上,酒店客房状态管理方面信息化与科学化,已成为当代化酒店重要标志。核心字:客房管理;管理系统;服务。1.问题描述1.1背景随着宾馆业竞争加剧,宾馆之间客源争夺越来越激烈,宾馆需要使用更有效信息化手段,拓展经营空间,减少运营成本,提高管理和决策效率。老式宾馆计算机管理系统重要涉及前台管理系统和后台管理系统两大某些,基本包括了宾馆重要业务部门,初步实现了对顾客服务和进行财务核算所需要各个功能。但老式宾馆管理基于财务管理为主线设计理念,无法满足宾馆全面信息化管理需要。当代宾馆酒店业迅速发展,新管理观念与模式层出不穷。宾馆客房管理系统亦随着宾馆管理理念发展而发展。宾馆客房管理系统仍旧采用了先进数据库理论,多媒体技术,软件工程理念等,从基层,中层,高层三个管理者层次为切入点,以成本分析,预测,控制为一线,形成一套上下贯通,操作便捷酒店系统解决方案,科学地将宾馆各种寻常业务完美结合在一起,为管理及决策提供了强有力支持。其对客人个性化服务及全面彻底信息化,使公司电算化水平提高到一种新更高层次,提供大量丰富基于公司管理经营过程中实际数据。1.2功能规定(1)客人基本信息录入;(2)客人基本信息查询、修改、增长、删除等;(3)客房有关信息录入,涉及房间号、收费原则、床位、类别等;(4)客房类别原则制定、类别信息输入;(5)客房基本信息查询、修改、删除等;(6)住房信息录入,涉及房间号、客人姓名等;(7)退房信息更新;2.需求分析2.1需求分析2.1.1解决对象系统要解决对象涉及信息管理、客户信息管理、客房信息管理、入住和退房管理、客房类型管理、费用管理、价目信息管理等7个方面,各个对象包括信息如下所示:(1)信息管理:可以对于各种信息查询,个人信息可以查看自己私人信息,还可以对自己私人信息进行修改。顾客信息查看顾客个人信息,对顾客信息进行增、删、查、改。(2)客户信息管理:可以新建客户,输入客户身份证号码、姓名、性别、出生日期和地址等信息,可以对于客户信息进行相应修改,还可以对客户消费信息进行记录。(3)客房信息管理:可以在相应房间类型下面进行添加相应房间,对相应房间进行删除,查看空房以及客房状况。(4)入住和退房管理:客户可以入住相应类型房型下空房,然后可以退房,系统自动将相应订单状态置为失效,入住状态置为已退房,将相应房间状态置为空房。(5)客房类型管理:管理员可以对相应房型进行各种属性修改,可以按照需求添加相应房型,管理员、工作人员都可以查看相应房型信息,管理员有需要时可以删除相应房型,系统自动将该房型下房间删除。(6)费用管理:管理员、工作人员都可以查看相应费用信息,管理员有需要时可以对宾馆收入与支出进行查询或修改。(7)价目信息管理:可以查看客房收费原则,管理员可以对客房价格进行查询与修改,工作人员可以查看可风价目信息。2.1.2系统功能分析某宾馆需要建立一种住房管理系统,需求分析成果如下:(1)宾馆规定该系统能实现住房信息管理、客户信息管理等功能;(2)一种房间有各种床位,同一房间内床位具备相似收费原则。不同类型房间床位收费原则也许不同;(3)每个房间有房间号、收费原则、床位数目等信息;(4)每位客人有身份证号码、姓名、性别、出生日期和地址等信息;(5)对每位客人每次住宿,应当记录其入住日期、退房日期和预付款额信息;(6)管理系统可查询出客人住宿有关信息、房间信息。2.1.3安全性和完整性规定安全性先通过试图机制,不同顾客只能访问系统授权视图,这样可以满足系统数据一定限度上安全性,在通过顾客授权机制,顾客登录来辨认顾客级别,依照这个级别来分派顾客权限,达到数据更高层次安全保密功能。系统完整性规定系统中数据对的性以及相容性。可以通过建立主、外键,使用check约束,或者通过使用触发器和级联更新。2.2系统功能模块图系统功能模块图,如图2.2所示。图2.2系统功能模块图2.3数据字典表2-3.客户信息表:表中列名数据类型可否为空阐明编号IntNotnull自增姓名Varchar(20)Notnull性别intNotnull(0-男,1-女)出生日期dataNotnull身份证号Varchar(20)Notnull主键联系电话Varchar(20)Notnull家庭住址Varchar(50)Notnull会员级别Varchar(10)Notnull会员积分floatNotnull表2-4.客房信息表:表中列名数据类型可否为空阐明编号IntNotnull自增房间号Varchar(10)Notnull主键分类Varchar(20)Notnull订房状态intNotnull0-已订,1-未订清洁状态intNotnull0-已清洁,1-未清洁价格floatNotnull折扣floatNotnull房间描述Varchar(500)Notnull可用状态intNotnull0-可用,1-不可用表2-5.订房信息表:表中列名数据类型可否为空阐明编号intNotnull自增身份证号Varchar(20)Notnull联合主键、外键房间号Varchar(20)Notnull联合主键、外键入住时间datetimeNotnull联合主键退房时间datetimeNotnull总房价floatNotnull3.概念构造设计3.1E-R图各实体之间E-R图,如图3-1所示。图3-1实体之间E-R图3.2实体及属性定义客户信息实体E-R图,如图3-2所示。图3—2客户信息实体E—R图 客房信息实体E-R图,如图3-3所示。图3—3客房信息实体E—R图 客户住宿实体E-R图,如图3-4所示。图3—4客户住宿实体E—R图4.物理构造设计数据库物理设计就是为逻辑数据模型选用一种最适当应用规定物理构造过程,在这个阶段要完毕两大任务。拟定数据库物理构造,在关系数据库中重要是存储办法和存储构造。对物理构造进行评价,评价重点是时间和空间效率。CREATEUNIQUEINDEXTravnoONTravellers(Tno)CREATEUNIQUEINDEXRoomnoONRooms(Rno)CREATEUNIQUEINDEXRitemnoONRoomitem(Ritemno)CREATEUNIQUEINDEXLivnoONLiving(Tno)5.触发器设计会员积分:USE[kfglxt]GO/******Object:Trigger[dbo].[t1]ScriptDate:09/26/19:36:40******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOALTERtrigger[dbo].[t1]on[dbo].[订房信息表]afterinsertasbeginsetnocounton;declare@编号int,@增长积分intselect@编号=身份证号,@增长积分=总房价frominsertedupdatedbo.客户信息表set会员积分=会员积分+@增长积分where身份证号=@编号End会员级别:USE[kfglxt]GO/******Object:Trigger[dbo].[会员级别增长]ScriptDate:09/26/19:37:52******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOALTERtrigger[dbo].[会员级别增长]on[dbo].[订房信息表]afterinsertasbeginsetnocounton;declare@编号int,@增长积分intselect@编号=身份证号,@增长积分=总房价frominsertedupdatedbo.客户信息表set会员级别=(会员积分+@增长积分)/100where身份证号=@编号End6.数据库实行和维护6.1建立数据库、数据表、索引6.1.1.建立数据库Createdatabasekfglxt;6.1.2.建立数据表(1)客户信息表CREATETABLE客户信息表(编号intIDENTITY(1,1)NOTNULL,姓名varchar(20)NOTNULL,性别intNOTNULL,出生日期dateNOTNULL,身份证号varchar(20)NOTNULL,联系电话varchar(20)NOTNULL,家庭住址varchar(50)NULL,会员级别varchar(10)NULL,会员积分floatNULL,CONSTRAINTp1PRIMARYKEY(身份证号));(2)客房信息表CREATETABLE客房信息表(编号intIDENTITY(1,1)NOTNULL,房间号varchar(10)NOTNULL,分类varchar(20)NOTNULL,订房状态intNOTNULL,清洁状态intNOTNULL,价格floatNOTNULL,折扣floatNOTNULL,房间描述varchar(500)NOTNULL,可用状态intNOTNULL,CONSTRAINTp6PRIMARYKEY(房间号));订房信息表CREATETABLE订房信息表(编号intIDENTITY(1,1)NOTNULL,身份证号varchar(20)NOTNULL,房间号varchar(10)NOTNULL,入住时间datetimeNOTNULL,退房时间datetimeNOTNULL,总房价floatNOTNULL,CONSTRAINTp2PRIMARYKEY(身份证号,房间号,入住时间),CONSTRAINTp3FOREIGNKEY(身份证号)REFERENCES客户信息表(身份证号),CONSTRAINTp4FOREIGNKEY(房间号)REFERENCES客房信息表(房间号));6.1.3.建立索引CREATEUNIQUEINDEXTravnoONtb_Travellers(Tno)CREATEUNIQUEINDEXRoomnoONtb_Rooms(Rno)CREATEUNIQUEINDEXRitemnoONtb_Roomitem(Ritemno)CREATEUNIQUEINDEXLivnoONtb_Living(Tno)7.存在问题总结对课本知识不熟悉,课程设计过程当中需要不断查阅课本,这样导致了时间挥霍。2.对SQLServer操作不熟悉,导致导入数据是经常出错,导致了某些不必要麻烦,应当提高操作纯熟限度。3.对于触发器和存储过程定义不是很熟悉,有稍微难点语句写不出来,对于数据库定义语句应当要纯熟掌握。4.对数据库设计总体把握不是很精确,导致中间多次重复改动前面业务流程图、数据流图和E-R图。致谢感谢教师指引和陪伴--宋立勇8.重要参照资料1.《数据库系统原理与应用》沈祥玖张岳中华人民共和国水利水电出版社2.《SQLServer数据库配备与管理指南》刘奎

清华大学出版社3.《SQL与关系数据库理论》周成兴清华大学出版社附录登录界面图1主界面图2订房图3源代码importjava.awt.Container;importjava.awt.*;importjava.util.*;importjava.text.*;importjava.awt.Rectangle;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.ItemEvent;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.Statement;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JPasswordField;importjavax.swing.JTextField;classdengluextendsJFrameimplementsActionListener{JLabelsystemTime; Containercon=this.getContentPane(); JFramef=newJFrame("客房管理系统"); JLabela=newJLabel("顾客名"); JTextFielda1=newJTextField(); JLabelb=newJLabel("密码"); JTextFieldb1=newJPasswordField(); JLabelq=newJLabel("答辩人:宋立勇"); JButtonc=newJButton("登录");JButtond=newJButton("退出"); JPanelz=(JPanel)this.getContentPane(); ImageIconicon=newImageIcon(getClass().getResource("/Desktop/3.JPG"));JLabeltu=newJLabel(icon); Containercontent=this.getContentPane(); publicdenglu(Strings){ super(s); con.setLayout(null); systemTime=newJLabel("系统时间:"); Containercp=getContentPane(); systemTime.setBounds(20,200,200,200); cp.add(systemTime); a.setBounds(newRectangle(100,80,60,30)); b.setBounds(newRectangle(100,140,60,30)); a1.setBounds(newRectangle(150,80,150,30)); b1.setBounds(newRectangle(150,140,150,30)); q.setBounds(newRectangle(280,300,100,20)); c.setBounds(newRectangle(100,200,80,30)); d.setBounds(newRectangle(200,200,80,30)); con.add(a); con.add(b); con.add(q); con.add(c); con.add(d); con.add(a1); con.add(b1); this.setSize(400,400); tu.setBounds(0,0,getWidth(),getHeight()); z.add(tu); z.setOpaque(false); this.getLayeredPane().add(tu,newInteger(Integer.MIN_VALUE)); this.setVisible(true); c.addActionListener(this); d.addActionListener(this); }publicvoidactionPerformed(ActionEvente){ if(e.getSource()==d) { this.setVisible(false); } if(e.getSource()==c){ StringdriverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"; try{ Class.forName(driverName); System.out.println("连接驱动成功"); }catch(ClassNotFoundExceptionb){b.printStackTrace();}; StringdbURL="jdbc:sqlserver://localhost:1433;DatabaseName=kfglxt"; try{ConnectiondbConn; StringuserName="sa"; StringuserPwd="370724"; dbConn=DriverManager.getConnection(dbURL,userName,userPwd); System.out.println("连接数据库成功"); Statementstatement; statement=dbConn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); Strings1=a1.getText(); Strings2=b1.getText(); //executeQuery()执行给定SQL语句,该语句返回单个resultset对象 ResultSetresultset=statement.executeQuery("select*from员工信息表where顾客名="+s1+"and密码="+s2+""); if(resultset.next()){ JOptionPane.showMessageDialog(null,"登陆成功!欢迎使用!"); this.setVisible(false); newfrist("客房管理");//,"管理员--"+t[1].getText() con.setVisible(false);//隐藏窗体 } else JOptionPane.showMessageDialog(this,"顾客名和密码不对的!请重新输入","警告",JOptionPane.WARNING_MESSAGE); dbConn.close(); a1.setText(null); b1.setText(null); //this.setVisible(false); } catch(Exceptionw){w.printStackTrace();}; }}publicstaticvoidmain(Stringargu[]){ denglud=newdenglu("客房管理系统"); TimerTasktask=newTimerTask(){denglutime=newdenglu(null);publicvoidrun(){//commentbyme/*Calendarst=Calendar.getInstance();Stringsdate;Dateddate;ddate=st.getTime();*///addbymebelow:Stringsdate;sdate=(newSimpleDateFormat("yyyy-MM-ddhh:mm:ss")).format(newDate());time.systemTime.setText(sdate);}};Timert=newTimer();t.scheduleAtFixedRate(task,newDate(),1000);} }登录importjava.awt.Container;importjava.awt.Rectangle;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JPanel;classfristextendsJFrameimplementsActionListener{ Containercon=this.getContentPane(); JFramef=newJFrame("客房管理系统"); //JButtona=newJButton("系统信息管理"); JButtonb=newJButton("客户信息管理"); JButtonc=newJButton("客房信息管理"); JButtond=newJButton("订房信息管理"); //JButtonsh=newJButton("退票"); //JButtonxs=newJButton("订票信息"); JButtontc=newJButton("退出"); JLabelq=newJLabel("答辩人:宋立勇"); JPanelz=(JPanel)this.getContentPane(); ImageIconicon=newImageIcon(getClass().getResource("/Desktop/3.JPG"));JLabeltu=newJLabel(icon); Containercontent=this.getContentPane(); publicfrist(Strings){ super(s); con.setLayout(null); //a.setBounds(newRectangle(20,30,200,30)); b.setBounds(newRectangle(20,80,200,30)); c.setBounds(newRectangle(20,130,200,30)); d.setBounds(newRectangle(20,180,200,30)); //sh.setBounds(newRectangle(20,230,100,30)); //xs.setBounds(newRectangle(20,280,100,30)); tc.setBounds(newRectangle(250,400,100,30)); q.setBounds(newRectangle(350,500,100,20)); //con.add(a); con.add(b); con.add(c); con.add(d); //con.add(sh); //con.add(xs); con.add(tc); con.add(q); this.setSize(500,600); tu.setBounds(0,0,getWidth(),getHeight()); z.add(tu); z.setOpaque(false); this.getLayeredPane().add(tu,newInteger(Integer.MIN_VALUE)); this.setVisible(true); //a.addActionListener(this); b.addActionListener(this); c.addActionListener(this); d.addActionListener(this); //sh.addActionListener(this); //xs.addActionListener(this); tc.addActionListener(this); } publicstaticvoidmain(Stringargu[]){ fristf=newfrist("客房管理系统"); } publicvoidactionPerformed(ActionEvente){ if(e.getSource()==tc){ this.setVisible(false); }if(e.getSource()==c){ newkefang("客房信息管理"); }if(e.getSource()==b){ newkehu("客户信息管理"); }if(e.getSource()==d){ newdingfang("订房信息管理"); } }}主界面importjava.awt.Container;importjava.awt.Rectangle;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JPanel;classkefangextendsJFrameimplementsActionListener{ Containercon=this.getContentPane(); JFramef=newJFrame("客房信息表"); //JButtona=newJButton("显示房间信息"); JButtoncx=newJButton("房间信息查询"); JButtontj=newJButton("添加房间信息"); JButtonxg=newJButton("修改房间信息"); JButtonsh=newJButton("删除房间信息"); JButtonxgz=newJButton("修改房间状态"); JButtont=newJButton("退出"); JLabelq=newJLabel("答辩人:宋立勇"); JPanelz=(JPanel)this.getContentPane(); ImageIconicon=newImageIcon(getClass().getResource("/Desktop/3.JPG"));JLabeltu=newJLabel(icon); Containercontent=this.getContentPane(); publickefang(Strings){ super(s); con.setLayout(null); //a.setBounds(newRectangle(20,30,100,30)); cx.setBounds(newRectangle(20,80,200,30)); tj.setBounds(newRectangle(20,130,200,30)); xg.setBounds(newRectangle(20,180,200,30)); sh.setBounds(newRectangle(20,230,200,30)); xgz.setBounds(newRectangle(20,280,200,30)); //xs.setBounds(newRectangle(20,280,100,30)); t.setBounds(newRectangle(250,400,100,30)); q.setBounds(newRectangle(350,500,100,20)); //con.add(a); con.add(cx); con.add(tj); con.add(xg); con.add(sh); con.add(xgz); con.add(t); con.add(q); this.setSize(500,600); tu.setBounds(0,0,getWidth(),getHeight()); z.add(tu); z.setOpaque(false); this.getLayeredPane().add(tu,newInteger(Integer.MIN_VALUE)); this.setVisible(true); //a.addActionListener(this); cx.addActionListener(this); tj.addActionListener(this); xg.addActionListener(this); sh.addActionListener(this); //xs.addActionListener(this); t.addActionListener(this); xgz.addActionListener(this); } publicstaticvoidmain(Stringargu[]){ fristf=newfrist("客房信息表"); } publicvoidactionPerformed(ActionEvente){if(e.getSource()==tj){ newtianjia("添加房间信息");}if(e.getSource()==cx){ newchaxun("房间信息查询");}if(e.getSource()==xg){ newxiugai("修改房间信息"); }if(e.getSource()==sh){ newshanchu("删除房间信息"); }if(e.getSource()==t){ this.setVisible(false); }if(e.getSource()==xgz){ newxiugaiz("修改房间状态"); } } }客房主界面importjava.awt.Container;importjava.awt.Rectangle;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.nio.channels.SelectionKey;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.Statement;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JTextField;classtianjiaextendsJFrameimplementsActionListener{ Containercon=this.getContentPane(); JLabela=newJLabel("房间号"); JTextFieldb=newJTextField(); JLabela1=newJLabel("分类"); JTextFieldb1=newJTextField(); JLabela2=newJLabel("订房状态"); JTextFieldb2=newJTextField(); JLabela3=newJLabel("清洁状态"); JTextFieldb3=newJTextField(); JLabela4=newJLabel("价格"); JTextFieldb4=newJTextField(); JLabela5=newJLabel("折扣"); JTextFieldb5=newJTextField(); JLabela6=newJLabel("房间描述"); JTextFieldb6=newJTextField(); JLabela7=newJLabel("可用状态"); JTextFieldb7=newJTextField(); JButtonc=newJButton("拟定"); JButtond=newJButton("取消"); JPanelz=(JPanel)this.getContentPane(); ImageIconicon=newImageIcon(getClass().getResource("/Desktop/3.JPG")); JLabeltu=newJLabel(icon); Containercontent=this.getContentPane(); intqw=0; publictianjia(Strings){ super(s); con.setLayout(null);//布局管理器 a.setBounds(newRectangle(20,30,50,30)); b.setBounds(newRectangle(80,30,180,30)); a1.setBounds(newRectangle(20,70,50,30)); b1.setBounds(newRectangle(80,70,180,30)); a2.setBounds(newRectangle(20,110,100,30)); b2.setBounds(newRectangle(80,110,180,30)); a3.setBounds(newRectangle(20,150,100,30)); b3.setBounds(newRectangle(80,150,180,30)); a4.setBounds(newRectangle(20,190,100,30)); b4.setBounds(newRectangle(80,190,180,30)); a5.setBounds(newRectangle(20,230,100,30)); b5.setBounds(newRectangle(80,230,180,30)); a6.setBounds(newRectangle(20,270,100,30)); b6.setBounds(newRectangle(80,270,180,30)); a7.setBounds(newRectangle(20,310,100,30)); b7.setBounds(newRectangle(80,310,180,30)); c.setBounds(newRectangle(40,350,100,30)); d.setBounds(newRectangle(200,350,100,30)); con.add(a); con.add(b); con.add(a1); con.add(b1); con.add(a2); con.add(b2); con.add(a3); con.add(b3); con.add(a5); con.add(b5); con.add(a6); con.add(b6); con.add(a7); con.add(b7); con.add(c); con.add(d); con.add(a4); con.add(b4); this.setSize(500,600); tu.setBounds(0,0,getWidth(),getHeight()); z.add(tu); z.setOpaque(false); this.getLayeredPane().add(tu,newInteger(Integer.MIN_VALUE)); this.setVisible(true); c.addActionListener(this);//向当前对象进行注册 d.addActionListener(this); } publicvoidactionPerformed(ActionEvente){ if(e.getSource()==d) { this.setVisible(false); } if(e.getSource()==c) { StringdriverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"; StringdbURL="jdbc:sqlserver://localhost:1433;DatabaseName=kfglxt"; StringuserName="sa"; StringuserPwd="370724"; ConnectiondbConn; try{//加载驱动 Class.forName(driverName); dbConn=DriverManager.getConnection(dbURL,userName,userPwd); System.out.println("连接成功!"); Stringk1=b.getText(); Stringk2=b1.getText(); Stringk3=b2.getText(); Stringk4=b3.getText(); Stringk5=b4.getText(); Stringk6=b5.getText(); Stringk7=b6.getText(); Stringk8=b7.getText(); Stringsql="Select*from客房信息表"; Statementst=dbConn.createStatement();//发送数据库语句p ResultSetr=st.executeQuery(sql);//成果集对象 while(r.next()){ if((r.getString(1)).equals(b.getText())){ qw=1; } } if(qw==1||k1==null||k1.equals("")||k2==null||k2.equals("")||k3==null||k3.equals("")||k4==null||k4.equals("")||k5==null||k5.equals("")||k6==null||k6.equals("")||k7==null||k7.equals("")||k8==null||k8.equals("")){ JOptionPane.showMessageDialog(null,"添加失败,请将信息填写完整,或者房间号已经存在"); } //if(qw!=1) //{ //JOptionPane.showMessageDialog(null,"订票失败,列车不存在!"); //} else{ Stringsql1="insertinto客房信息表values(?,?,?,?,?,?,?,?)"; System.out.println(sql1); PreparedStatementpre=dbConn.prepareStatement(sql1);//预编译解决 pre.setString(1,k1);//将指定参数设立为给定javaString值 pre.setString(2,k2); pre.setString(3,k3); pre.setString(4,k4); pre.setString(5,k5); pre.setString(6,k6); pre.setString(7,k7); pre.setString(8,k8); pre.execute(); Statementstatement; statement=dbConn.createStatement(); JOptionPane.showMessageDialog(null,"添加成功"); b.setText(null); b1.setText(null); b2.setText(null); b3.setText(null); b4.setText(null); b5.setText(null); b6.setText(null); b7.setText(null); }} catch(Exceptione1) { e1.printStackTrace(); { System.out.println("连接失败"); } } } } }添加importjava.awt.Color;importjava.awt.Container;importjava.awt.Rectangle;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JTextField;classxiugaiextendsJFrameimplementsActionListener{ Containercon=this.getContentPane(); JLabela=newJLabel("房间号"); JTextFieldb=newJTextField(); //JLabelname1=newJLabel("分类"); //JTextFieldname=newJTextField(); JLabela1=newJLabel("订房状态"); JTextFieldb1=newJTextField(); //JLabela2=newJLabel("清洁状态"); //JTextFieldb2=newJTextField(); JLabela3=newJLabel("价格"); JTextFieldb3=newJTextField(); JLabela4=newJLabel("折扣"); JTextFieldb4=newJTextField(); //JLabela5=newJLabel("房间描述"); //JTextFieldb5=newJTextField(); JLabela6=newJLabel("可用状态"); JTextFieldb6=newJTextField(); JButtonc=newJButton("拟定"); JButtond=newJButton("取消"); JPanelz=(JPanel)this.getContentPane();ImageIconicon=newImageIcon(getClass().getResource("/Desktop/3.JPG")); JLabeltu=newJLabel(icon); Containercontent=this.getContentPane(); publicxiugai(Strings){ super(s); //b.setForeground(Color.red); //b.setBackground(Color.green); //b4.setForeground(Color.blue); //b4.setBackground(Color.red); //b3.setForeground(Color.green); //b3.setBackground(Color.red); //b1.setForeground(Color.red); //b1.setBackground(Color.yellow); con.setLayout(null); //d.setForeground(Color.red); a.setBounds(newRectangle(10,30,50,30)); b.setBounds(newRectangle(80,30,180,30)); //name1.setBounds(newRectangle(10,80,80,30)); //name.setBounds(newRectangle(80,80,180,30));a1.setBounds(newRectangle(10,130,180,30)); b1.setBounds(newRectangle(80,130,180,30)); //a2.setBounds(newRectangle(10,180,180,30)); //b2.setBounds(newRectangle(80,180,180,30));a3.setBounds(newRectangle(10,230,180,30)); b3.setBounds(newRectangle(80,230,180,30)); a4.setBounds(newRectangle(10,280,180,30)); b4.setBounds(newRectangle(80,280,180,30)); //a5.setBounds(newRectangle(10,330,180,30)); //b5.setBounds(newRectangle(80,330,180,30)); a6.setBounds(newRectangle(10,380,180,30)); b6.setBounds(newRectangle(80,380,180,30));c.setBounds(newRectangle(20,430,100,30)); d.setBounds(newRectangle(200,430,100,30)); con.add(a); con.add(b); //con.add(name1); con.add(b4); con.add(a1); con.add(b1); //con.add(a2); //con.add(b2); con.add(a3); con.add(b3); con.add(a4); con.add(b4); //con.add(a5); //con.add(b5); con.add(a6); con.add(b6); con.add(c); con.add(d); this.setSize(500,600); tu.setBounds(0,0,getWidth(),getHeight()); z.add(tu); z.setOpaque(false);this.getLayeredPane().add(tu,newInteger(Integer.MIN_VALUE)); this.setVisible(true); c.addActionListener(this); d.addActionListener(this); } publicvoidactionPerformed(ActionEvente){ if(e.getSource()==d) { this.setVisible(false); } if(e.getSource()==c) { Stringk1=b.getText(); Stringk2=b1.getText(); //Stringk3=b2.getText(); Stringk4=b3.getText(); Stringk5=b4.getText(); Stringk6=b6.getText(); if(k4==null||k4.equals("")||k1==null||k1.equals("")||k2==null||k2.equals("")||k4==null||k4.equals("")||k5==null||k5.equals("")||k6==null||k6.equals("")) { JOptionPane.showMessageDialog(null,"请将信息填写完整"); b.setText(null); b1.setText(null); //b2.setText(null);//输入完信息点拟定信息自动清空 b3.setText(null); b4.setText(null); b6.setText(null); } else { StringdriverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"; StringdbURL="jdbc:sqlserver://localhost:1433;DatabaseName=kfglxt"; StringuserName="sa"; StringuserPwd="370724"; ConnectiondbConn; try{ Class.forName(driverName); dbConn=DriverManager.getConnection(dbURL,userName,userPwd); System.out.println("连接成功!"); Stringsql="update客房信息表set订房状态=?,清洁状态=?,价格=?,折扣=?,可用状态=?where房间号=?"; System.out.println(sql); PreparedStatementpre=dbConn.prepareStatement(sql);//解决sql语句,将aql语句发送到数据库 pre.setString(1,k2);//数据库第一列值为k1 //pre.setString(2,k3); pre.setString(2,k4); pre.setString(3,k5); pre.setString(4,k6); pre.setString(5,k1); pre.executeUpdate(); JOptionPane.showMessageDialog(null,"修改成功"); b1.setText(null); //b2.setText(null);//输入完信息点拟定信息自动清空 b3.setText(null); b4.setText(null); b6.setText(null); } catch(Exceptione1) { e1.printStackTrace(); { System.out.println("连接失败"); } } } } }}修改importjava.awt.Container;importjava.awt.Rectangle;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.Statement;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JTextField;classshanchuextendsJFrameimplementsActionListener{ Containercon=this.getContentPane(); JLabela=newJLabel("房间号"); JTextFieldb=newJTextField(); //JLabela1=newJLabel("姓名"); //JTextFieldb1=newJTextField(); //JLabela2=newJLabel("身份证号"); //JTextFieldb2=newJTextField(); JButtonc=newJButton("拟定"); intqw=0; JButtond=newJButton("取消"); JPanelz=(JPanel)this.getContentPane(); ImageIconicon=newImageIcon(getClass().getResource("/Desktop/3.JPG")); JLabeltu=newJLabel(icon); Containercontent=this.getContentPane(); publicshanchu(Strings){ super(s); con.setLayout(null); a.setBounds(newRectangle(30,30,50,30)); b.setBounds(newRectangle(80,30,180,30)); //a1.setBounds(newRectangle(50,90,50,30)); //b1.setBounds(newRectangle(80,90,180,30)); //a2.setBounds(newRectangle(20,150,100,30)); //b2.setBounds(newRectangle(80,150,180,30)); c.setBounds(newRectangle(40,200,100,30)); d.setBounds(newRectangle(200,200,100,30)); con.add(a); con.add(b); //con.add(a1); //con.add(b1); //con.add(a2); //con.add(b2); con.add(c); con.add(d); this.setSize(500,600); tu.setBounds(0,0,getWidth(),getHeight()); z.add(tu); z.setOpaque(false); this.getLayeredPane().add(tu,newInteger(Integer.MIN_VALUE)); this.setVisible(true); c.addActionL

温馨提示

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

评论

0/150

提交评论