版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
PAGE課程設(shè)計報告課程名稱:_面向?qū)ο蠡A(chǔ)及java語言課程設(shè)計設(shè)計題目:賓館客房管理系統(tǒng)的設(shè)計與實現(xiàn)學(xué)院:信息科學(xué)與工程學(xué)院專業(yè):計算機科學(xué)與技術(shù)(軟件外包)_二零一五年七月二十四日PAGE26設(shè)計內(nèi)容及要求賓館客房管理系統(tǒng)主要設(shè)計了管理員登陸,查詢客房信息,修改、添加客房信息,通過java與數(shù)據(jù)庫的連接,實現(xiàn)后臺調(diào)用數(shù)據(jù)。通過調(diào)用數(shù)據(jù)庫中的ID和password登陸管理系統(tǒng),做出相應(yīng)的處理。開發(fā)環(huán)境Eclipse(java環(huán)境開發(fā))JDK1.7(進行java程序的編譯和運行)MySQL綠色版(數(shù)據(jù)庫儲存)設(shè)計思路整體框架客房管理系統(tǒng)客房信息查詢添加客房信息修改客房信息 2.數(shù)據(jù)庫設(shè)計本系統(tǒng)使用MySQL綠色版來存儲數(shù)據(jù),其中有一個數(shù)據(jù)庫home,數(shù)據(jù)庫中包含兩張表:xx表主要記錄客房的信息(房間號,房間類型,單價,入住姓名,身份證號碼,房間狀態(tài)),如圖表1-1;id表中記錄管理員的信息(ID,password),如圖1-2。表1-1xx房間號房間類型單價入住姓名身份證號碼房間狀態(tài)301標準間168張樹住303標準間168王住305標準間168未入住307大床房148楊金住309家庭房256未入住表1-2idIDpasswordWangd7877Yangjs5988Zhangsp39773.數(shù)據(jù)庫與Eclipse連接使用ODBC為數(shù)據(jù)庫Student配置ODBC數(shù)據(jù)源,使應(yīng)用程序可以訪問數(shù)據(jù)庫,進行應(yīng)用程序和數(shù)據(jù)庫之間的數(shù)據(jù)交互。詳細設(shè)計過程與分析登陸界面首先由用戶輸入賬戶和密碼,由系統(tǒng)讀取賬號,并根據(jù)賬號在數(shù)據(jù)庫中查詢相應(yīng)的密碼;根據(jù)數(shù)據(jù)庫查詢到的密碼,與用戶輸入的密碼進行匹配,如果相同,單擊確定則可以進入功能界面。功能界面在功能界面,實現(xiàn)三個功能,分別是:查詢客戶信息,添加客戶信息,修改客戶信息。每個按鈕添加單擊事件。響應(yīng)后進入相應(yīng)的功能界面??头啃畔⒉樵冞M入客房信息查詢界面,輸入房間號,單擊查詢按鈕,做出相應(yīng)的事件處理事件,從home數(shù)據(jù)庫xx表中讀取房間類型,單價,入住姓名,身份證號碼,入住狀態(tài)。如果入住狀態(tài)為未入住,則入住姓名,身份證號碼為空??头啃畔⒉樵兘缑嫔戏接锌头啃畔⒉樵儭⑻砑涌头啃畔?、修改客房信息三個單擊按鈕,點擊可以直接實現(xiàn)事件響應(yīng)。添加客房信息進入客房信息查詢界面,界面上方有客房信息查詢、添加客房信息、修改客房信息三個單擊按鈕,點擊可以直接實現(xiàn)事件響應(yīng)。添加客房信息中所需錄入的客房信息,及其文本區(qū)域。當用戶向文本區(qū)域錄入數(shù)據(jù)完成單擊添加時,響應(yīng)增加事件。首先,進行數(shù)據(jù)庫的連接,創(chuàng)建執(zhí)行SQL的語句對象,執(zhí)行SQL語句,將數(shù)據(jù)插入到數(shù)據(jù)庫,關(guān)閉連接。添加完成后,顯示“添加成功”確認對話框。重置按鈕功能為重置各文本框內(nèi)的內(nèi)容,使清空文本框更加方便。修改客房信息進入修改客房信息界面,界面上方有客房信息查詢、添加客房信息、修改客房信息三個單擊按鈕,點擊可以直接實現(xiàn)事件響應(yīng)。修改客房信息錄入到文本區(qū)域,當用戶向文本區(qū)域錄入數(shù)據(jù)完成單擊添加時,響應(yīng)增加事件。首先,進行數(shù)據(jù)庫的連接,創(chuàng)建執(zhí)行SQL的語句對象,執(zhí)行SQL語句,將數(shù)據(jù)插入到數(shù)據(jù)庫,關(guān)閉連接。修改完成后,顯示“修改成功”確認對話框。重置按鈕功能為重置各文本框內(nèi)的內(nèi)容,使清空文本框更加方便。數(shù)據(jù)庫的建立使用MySQL綠色版建立home數(shù)據(jù)庫,在數(shù)據(jù)庫中建立id表和xx表。源代碼登陸界面源代碼packageKF;importjava.awt.BorderLayout;importjava.awt.Color;importjava.awt.FlowLayout;importjava.awt.GridLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.beans.Statement;importjava.sql.Connection;importjava.sql.ResultSet;importjava.util.ArrayList;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JPasswordField;importjavax.swing.JTextField;publicclassHoteLandextendsJFrameimplementsActionListener{ privateJPanelpanel1,panel2,panel3,panel4,panel5; privateJLabellabel1,label2,label3; privateJTextFieldtext1; privateJTextFieldtext2; privateJButtonbutton1,button2; publicHoteLand() { super("客房系統(tǒng)登錄"); this.setLocation(400,200); this.setSize(300,200); this.setBackground(java.awt.Color.LIGHT_GRAY); //this.setDefaultCloseOperation(EXIT_ON_CLOSE); this.getContentPane().setLayout(newBorderLayout()); panel1=newJPanel(); panel2=newJPanel(); panel3=newJPanel(); panel4=newJPanel(); panel5=newJPanel(); panel3.setLayout(newjava.awt.FlowLayout(FlowLayout.CENTER)); label1=newJLabel("————客房管理系統(tǒng)————"); label2=newJLabel("賬號"); label3=newJLabel("密碼"); text1=newJTextField(10); text2=newJPasswordField(10); button1=newJButton("確定"); button1.addActionListener(this); button2=newJButton("退出"); button2.addActionListener(this); panel4.add(label2); panel4.add(text1); panel5.add(label3); panel5.add(text2); panel1.add(panel4); panel1.add(panel5); panel2.add(button1); panel2.add(button2); panel3.add(label1); this.getContentPane().add(panel3,"North"); this.getContentPane().add(panel1,"Center"); this.getContentPane().add(panel2,"South"); this.setVisible(true); } publicstaticvoidmain(String[]args){ newHoteLand(); } @Override publicvoidactionPerformed(ActionEventarg0){ //TODOAuto-generatedmethodstub if(arg0.getSource()==button1){ DBdb=newDB();//鏈接數(shù)據(jù)庫 Stringsql="SELECT*FROMidWHEREID='"+text1.getText()+"'"; ArrayList<String[]>list=db.arrQuery(sql); if(list.get(0)[1].equals(text2.getText())){ newJiemian(); this.dispose(); }else{ //JOptionPane.showMessageDialog(this,"\""+text1.getText()+"\"賬號錯誤,請重新輸入!"); JOptionPane.showMessageDialog(this,"\""+text2.getText()+"\"密碼錯誤,請重新輸入!"); text2.setText(""); text1.setText(""); } } if(arg0.getSource()==button2){ //text1.setText(null); //text2.setText(null); System.exit(0); } }}功能界面packageKF;importjava.awt.BorderLayout;importjava.awt.FlowLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JPanel;publicclassJiemianextendsJFrameimplementsActionListener{ privateJLabellabel1,label2,label3; privateJPanelpanel1,panel2,panel3,panel4,panel5; privateJButtonbutton1,button2,button3; publicJiemian() { this.setLocation(400,200); this.setSize(400,130); this.setBackground(java.awt.Color.LIGHT_GRAY); panel1=newJPanel(); panel2=newJPanel(); panel3=newJPanel(); panel4=newJPanel(); panel5=newJPanel(); button1=newJButton("客房信息查詢"); button1.addActionListener(this); button2=newJButton("添加客房信息"); button2.addActionListener(this); button3=newJButton("修改客房信息"); button3.addActionListener(this); label2=newJLabel("--歡迎使用客房管理系統(tǒng)--"); panel1.add(button1); panel1.add(button2); panel1.add(button3); panel2.add(label2); this.getContentPane().add(panel2,"South"); this.getContentPane().add(panel1,"Center"); this.getContentPane().add(panel3,"North"); this.setVisible(true); } publicstaticvoidmain(String[]args){ newJiemian(); } @Override publicvoidactionPerformed(ActionEventarg0){ //TODOAuto-generatedmethodstub if(arg0.getSource()==button1){ newChaxu(); this.dispose(); } if(arg0.getSource()==button2){ newAddRooms(); this.dispose(); } if(arg0.getSource()==button3){ newXgkfxx(); this.dispose(); } }}添加客房信息界面packageKF;importjava.awt.Dimension;importjava.awt.FlowLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.JButton;importjavax.swing.JComboBox;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JTextField;publicclassAddRoomsextendsJFrameimplementsActionListener{ privateJLabellabel1,label2,label3,label4,label5,label6,label7; privateJPanelpanel1,panel2,panel3,panel4,panel5,panel6,panel7,panel8,panel9; privateJButtonbutton1,button2,button3,button4,button5; privateJTextFielda,b,c,d,e,f; privateJComboBox<?>lx,dj,zt; @SuppressWarnings({"unchecked","rawtypes"}) publicAddRooms(){ super("客房管理系統(tǒng)"); this.setLocation(400,200); this.setSize(420,400); this.setBackground(java.awt.Color.LIGHT_GRAY); this.getContentPane().setLayout(newFlowLayout(1)); panel1=newJPanel(); panel2=newJPanel(); panel3=newJPanel(); panel4=newJPanel(); panel5=newJPanel(); panel6=newJPanel(); panel7=newJPanel(); panel8=newJPanel(); panel9=newJPanel(); button1=newJButton("客房信息查詢"); button1.addActionListener(this); button2=newJButton("添加客房信息"); button2.addActionListener(this); button3=newJButton("修改客房信息"); button3.addActionListener(this); label1=newJLabel("添加客房信息"); label2=newJLabel("房間號:"); a=newJTextField(25); label3=newJLabel("房間類型:"); //b=newJTextField(25); Stringt1[]={"大床房","標準間","家庭房"}; lx=newJComboBox(t1); lx.setPreferredSize(newDimension(280,25)); label4=newJLabel("單價:"); Stringt2[]={"148","168","256"}; dj=newJComboBox(t2); dj.setPreferredSize(newDimension(280,25)); label5=newJLabel("入住姓名:"); d=newJTextField(25); label6=newJLabel("身份證號:"); e=newJTextField(25); label7=newJLabel("狀態(tài):"); Stringt3[]={"入住","未入住"}; zt=newJComboBox(t3); zt.setPreferredSize(newDimension(280,25)); button4=newJButton("添加"); button4.addActionListener(this); button5=newJButton("重置"); button5.addActionListener(this); panel1.add(button1); panel1.add(button2); panel1.add(button3); panel2.add(label1); panel3.add(label2); panel3.add(a); panel4.add(label3); panel4.add(lx); panel5.add(label4); panel5.add(dj); panel6.add(label5); panel6.add(d); panel7.add(label6); panel7.add(e); panel9.add(label7); panel9.add(zt); panel8.add(button4); panel8.add(button5); this.getContentPane().add(panel1,"Center"); this.getContentPane().add(panel2,"Center"); this.getContentPane().add(panel3,"Center"); this.getContentPane().add(panel4,"Center"); this.getContentPane().add(panel5,"Center"); this.getContentPane().add(panel6,"Center"); this.getContentPane().add(panel7,"Center"); this.getContentPane().add(panel9,"Center"); this.getContentPane().add(panel8,"Center"); this.setVisible(true); } @Override publicvoidactionPerformed(ActionEventarg0){ //TODOAuto-generatedmethodstub if(arg0.getSource()==button1){ newChaxu(); this.dispose(); } if(arg0.getSource()==button2){ newAddRooms(); this.dispose(); } if(arg0.getSource()==button3){ newXgkfxx(); this.dispose(); } if(arg0.getSource()==button4){ //System.out.println(lx.getSelectedIndex()); DBdb=newDB();//鏈接數(shù)據(jù)庫 Stringsql="INSERTINTOxxVALUES("+a.getText()+",'"+lx.getSelectedItem()+"',"+dj.getSelectedItem()+",'"+d.getText()+"','"+e.getText()+"',"+"'"+zt.getSelectedItem()+"'"+")"; intn=db.update(sql); if(n>0) { JOptionPane.showMessageDialog(this,"添加成功!"); a.setText(""); lx.getSelectedIndex(); dj.getSelectedIndex(); d.setText(""); e.setText(""); zt.getSelectedIndex(); } } if(arg0.getSource()==button5){ a.setText(""); b.setText(""); c.setText(""); d.setText(""); e.setText(""); } } publicstaticvoidmain(String[]args){ newAddRooms();}}客房信息查詢packageKF;importjava.awt.FlowLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.sql.Statement;importjava.util.ArrayList;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JTextField;publicclassChaxuextendsJFrameimplementsActionListener{ privateJLabellabel1,label2,label3,label4,label5,label6,label7; PrivateJPanelpanel1,panel2,panel3,panel4,panel5,panel6,panel7,panel8; privateJButtonbutton1,button2,button3,button4,button5; privateJTextFielda,b,c,e,d,f; Statementsqll; publicChaxu(){ super("歡迎使用客房管理系統(tǒng)"); this.setLocation(400,200); this.setSize(420,380); this.setBackground(java.awt.Color.LIGHT_GRAY); this.getContentPane().setLayout(newFlowLayout(1)); panel1=newJPanel(); panel2=newJPanel(); panel3=newJPanel(); panel4=newJPanel(); panel5=newJPanel(); panel6=newJPanel(); panel7=newJPanel(); panel8=newJPanel(); button1=newJButton("客房信息查詢"); button1.addActionListener(this); button2=newJButton("添加客房信息"); button2.addActionListener(this); button3=newJButton("修改客房信息"); button3.addActionListener(this); label1=newJLabel("查詢客房信息"); label2=newJLabel("房間號:"); a=newJTextField(19); button4=newJButton("查詢"); button4.addActionListener(this); label3=newJLabel("房間類型:"); b=newJTextField(25); label4=newJLabel("單價:"); c=newJTextField(25); label5=newJLabel("入住姓名:"); d=newJTextField(25); label6=newJLabel("身份證號:"); e=newJTextField(25); label7=newJLabel("房間狀態(tài):"); f=newJTextField(25); button5=newJButton("返回"); button5.addActionListener(this); panel1.add(button1); panel1.add(button2); panel1.add(button3); panel2.add(label2); panel2.add(a); panel2.add(button4); panel3.add(label3); panel3.add(b); panel4.add(label4); panel4.add(c); panel5.add(label5); panel5.add(d); panel6.add(label6); panel6.add(e); panel8.add(label7); panel8.add(f); panel7.add(button5); this.getContentPane().add(panel1,"Center"); this.getContentPane().add(label1,"Center"); this.getContentPane().add(panel2,"Center"); this.getContentPane().add(panel3,"Center"); this.getContentPane().add(panel4,"Center"); this.getContentPane().add(panel5,"Center"); this.getContentPane().add(panel6,"Center"); this.getContentPane().add(panel8,"Center"); this.getContentPane().add(panel7,"Center"); this.setVisible(true); } publicstaticvoidmain(String[]args){ newChaxu();} @Override publicvoidactionPerformed(ActionEvente1){ //TODOAuto-generatedmethodstub if(e1.getSource()==button1){ newChaxu(); this.dispose(); } if(e1.getSource()==button2){ newAddRooms(); this.dispose(); } if(e1.getSource()==button3){ newXgkfxx(); this.dispose(); } if(e1.getSource()==button4){ DBdb=newDB();//鏈接數(shù)據(jù)庫 Stringsql="SELECT房間類型,單價,入住姓名,身份證號碼,房間狀態(tài)FROMxxWHERE房間號="+a.getText(); ArrayList<String[]>list=db.arrQuery(sql); b.setText(list.get(0)[0]); c.setText(list.get(0)[1]); d.setText(list.get(0)[2]); e.setText(list.get(0)[3]); f.setText(list.get(0)[4]); } if(e1.getSource()==button5){ newJiemian(); this.dispose(); }}}修改客房信息packageKF;importjava.awt.FlowLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JTextField;publicclassXgkfxxextendsJFrameimplementsActionListener{ privateJLabellabel1,label2,label3,label4,label5,label6,label7; privateJPanelpanel1,panel2,panel3,panel4,panel5,panel6,panel7,panel8,panel9; privateJButtonbutton1,button2,button3,button4,button5; privateJTextFielda,b,c,d,e,f; publicXgkfxx(){ super("客房管理系統(tǒng)"); this.setLocation(400,200); this.setSize(420,380); this.setBackground(java.awt.Color.LIGHT_GRAY); this.getContentPane().setLayout(newFlowLayout(1)); panel1=newJPanel(); panel2=newJPanel(); panel3=newJPanel(); panel4=newJPanel(); panel5=newJPanel(); panel6=newJPanel(); panel7=newJPanel(); panel8=newJPanel(); panel9=newJPanel(); button1=newJButton("客房信息查詢"); button1.addActionListener(this); button2=newJButton("添加客房信息"); button2.addActionListener(this); button3=newJButton("修改客房信息"); button3.addActionListener(this); label1=newJLabel("修改客房信息"); label2=newJLabel("房間號:"); a=newJTextField(25); label3=newJLabel("房間類型:"); b=newJTextField(25); label4=newJLabel("單價:"); c=newJTextField(25); label5=newJLabel("入住姓名:"); d=newJTextField(25); label6=newJLabel("身份證號:"); e=newJTextField(25); label7=newJLabel("狀態(tài):"); f=newJTextField(25); button4=newJButton("修改"); button4.addActionListener(this); button5=newJButton("重置"); button5.addActionListener(this); panel1.add(button1); panel1.add(button2); panel1.add(button3); panel2.add(label1); panel3.add(label2); panel3.add(a); panel4.add(label3); panel4.add(b); panel5.add(label4); panel5.add(c); panel6.add(label5); panel6.add(d); panel7.add(label6); panel7.add(e); panel9.add(label7); panel9.add(f); panel8.add(button4); panel8.add(button5); this.getContentPane().add(panel1,"Center"); this.getContentPane().add(panel2,"Center"); this.getContentPane().add(panel3,"Center"); this.getContentPane().add(panel4,"Center"); this.getContentPane().add(panel5,"Center"); this.getContentPane().add(panel6,"Center"); this.getContentPane().add(panel7,"Center"); this.getContentPane().add(panel9,"Center"); this.getContentPane().add(panel8,"Center"); this.setVisible(true); } @Override publicvoidactionPerformed(ActionEventarg0){ //TODOAuto-generatedmethodstub if(arg0.getSource()==button1){ newChaxu(); this.dispose(); } if(arg0.getSource()==button2){ newAddRooms(); this.dispose(); } if(arg0.getSource()==button3){ newXgkfxx(); this.dispose(); } if(arg0.getSource()==button4){ if(arg0.getSource()==button4){ DBdb=newDB();//鏈接數(shù)據(jù)庫 Stringsql="updatexxset房間類型='"+b.getText()+"',單價="+c.getText()+",入住姓名='"+d.getText()+"',身份證號碼="+e.getText()+",房間狀態(tài)='"+f.getText()+"'where房間號="+a.getText(); intn=db.update(sql); if(n>0) { JOptionPane.showMessageDialog(this,"修改成功!"); a.setText(""); b.setText(""); c.setText(""); d.setText(""); e.setText(""); f.setText(""); } } if(arg0.getSource()==button5){ a.setText(""); b.setText(""); c.setText(""); d.setText(""); e.setText(""); f.setText(""); } } } publicstaticvoidmain(String[]args){ newXgkfxx();}}連接數(shù)據(jù)庫packageKF;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.ResultSetMetaData;importjava.sql.SQLException;importjava.sql.Statement;importjava.util.ArrayList;importjava.util.HashMap;publicclassDB{ Connectionconn=null; Statementstmt=null; ResultSetrs=null; publicvoidgetConnection(){ try{ Class.forName("com.mysql.jdbc.Driver");//加載驅(qū)動 conn=DriverManager.getConnection("jdbc:mysql://localhost:3308/home","root","mysql");//獲取連接 stmt=conn.createStatement();//創(chuàng)建語句對象 }catch(Exceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } publicintupdate(Stringsql){ intnum=-1; getConnection(); try{ num=stmt.executeUpdate(sql); }catch(SQLExceptione){ e.printStackTrace(); }finally{ close(); } returnnum; } publicstaticvoidmain(String[]args){ DBdb=newDB(); ArrayList<String[]>arr=db.arrQuery("select*fromemployee"); for(inti=0;i<arr.size();i++){ String[]temp=arr.get(i); for(Stringt:temp){ System.out.print(t+""); } System.out.println(); } } publicArrayList<String[]>arrQuery(Stringsql){ getConnection(); ArrayList<String[]>rsList=newArrayList<String[]>(); try{ rs=stmt.executeQuery(sql); ResultSetMetaDatarsmd=rs.getMetaData(); intnum=rsmd.getColumnCount(); while(rs.next()){ String[]arr=newString[num]; for(inti=1;i<=num;i++){ Stringtemp=rs.getString(i); arr[i-1]=temp; } rsList.add(arr); } }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }finally{ close(); } returnrsList; }// 編寫程序:// 創(chuàng)建一個類DBTools,在DBTools中創(chuàng)建一個方法find,find方法用于對數(shù)據(jù)庫進行查詢操作,現(xiàn)在要求將結(jié)果集封裝成數(shù)組線性表嵌套數(shù)組的形式:// ArrayList<String[]>rsList=newArrayList<String[]>()形式// 其中: String[]用于存儲一行記錄的所有字段(的值)// rsList存儲所有的數(shù)組(String[]),即記錄的總數(shù) publicArrayList<HashMap<String,String>>query(Stringsql){ getConnection(); ArrayList<HashMap<String,String>>alist=newArrayList<HashMap<String,String>>(); try{ rs=stmt.executeQuery(sql); ResultSetMetaDatarsmd=rs.getMetaData();//獲取結(jié)果集結(jié)構(gòu)對象 while(rs.next()){ HashMap<String,String>hm=newHashMap<String,String>(); for(inti=1;i<=rsmd.getColumnCount();i++){ Stringkey=rsmd.getColumnName(i); Stringvalue=rs.getString(i); hm.put(key,value); } alist.add(hm); } }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }finally{ close(); } returnalist; } publicArrayList<String[]>pageQuery(intpageCount,intpageNum,Stringsql){//select*fromemployeelimit StringnewSql=sql+"limit"+(pageNum-1)*pageCount+","+pageCount; returnarrQuery(newSql); } publicvoidclose(){ if(rs!=null){ try{ rs.close(); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } if(stmt!=null){ try{ stmt.close(); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } if(conn!=null){ try{ conn.close(); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } } }設(shè)計結(jié)果與分析home數(shù)據(jù)庫xx表和id表圖示1-1xx表圖示1-2id表登陸界面圖示2-1登陸界面功能界面 圖示3-1功能界面客房信息查詢圖示4-1查詢界面圖示4-2查詢結(jié)果添加客房信息圖示5-1添加客房信息界面圖示5-2添加客房信息圖示5-3添加成功圖示5-3數(shù)據(jù)庫中添加修改客房信息圖示6-1圖示6-2修改客房信息圖示6-3修改成功圖示6-4數(shù)據(jù)庫修改成功總結(jié)經(jīng)過為期5天的課程設(shè)計,我們終于完成了關(guān)于賓館管理的系統(tǒng)。在這次課程設(shè)計中,我們對這學(xué)期學(xué)習(xí)的java,數(shù)據(jù)庫的內(nèi)容得到了系統(tǒng)的認識和更深刻的了解,對界面的設(shè)置更加得心應(yīng)手,并且學(xué)會了用不同的布局來設(shè)計界面。于此同時,我們也學(xué)會了如何在java和數(shù)據(jù)庫中建立連接來解決實際問題。然而,雖然我們的系統(tǒng)實現(xiàn)了基本的修改,查詢,增加賓館信息的功能,但因能力有限,仍然存在一些問題:界面沒有做到十分美觀,生動,功能較少較單一等問題。隨著我們對程序了解的更加深入,學(xué)習(xí)知識的更加具體化,我們將會解決這些問題,實現(xiàn)系統(tǒng)更加強大的功能!基于C8051F單片機直流電動機反饋控制系統(tǒng)的設(shè)計與研究基于單片機的嵌入式Web服務(wù)器的研究MOTOROLA單片機MC68HC(8)05PV8/A內(nèi)嵌EEPROM的工藝和制程方法及對良率的影響研究基于模糊控制的電阻釬焊單片機溫度控制系統(tǒng)的研制基于MCS-51系列單片機的通用控制模塊的研究基于單片機實現(xiàn)的供暖系統(tǒng)最佳啟停自校正(STR)調(diào)節(jié)器單片機控制的二級倒立擺系統(tǒng)的研究基于增強型51系列單片機的TCP/IP協(xié)議棧的實現(xiàn)基于單片機的蓄電池自動監(jiān)測系統(tǒng)基于32位嵌入式單片機系統(tǒng)的圖像采集與處理技術(shù)的研究基于單片機的作物營養(yǎng)診斷專家系統(tǒng)的研究基于單片機的交流伺服電機運動控制系統(tǒng)研究與開發(fā)基于單片機的泵管內(nèi)壁硬度測試儀的研制基于單片機的自動找平控制系統(tǒng)研究基于C8051F040單片機的嵌入式系統(tǒng)開發(fā)基于單片機的液壓動力系統(tǒng)狀態(tài)監(jiān)測儀開發(fā)模糊Smith智能控制方法的研究及其單片機實現(xiàn)一種基于單片機的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機沖床數(shù)控系統(tǒng)的研究基于CYGNAL單片機的在線間歇式濁度儀的研制基于單片機的噴油泵試驗臺控制器的研制基于單片機的軟起動器的研究和設(shè)計基于單片機控制的高速快走絲電火花線切割機床短循環(huán)走絲方式研究基于單片機的機電產(chǎn)品控制系統(tǒng)開發(fā)基于PIC單片機的智能手機充電器基于單片機的實時內(nèi)核設(shè)計及其應(yīng)用研究基于單片機的遠程抄表系統(tǒng)的設(shè)計與研究基于單片機的煙氣二氧化硫濃度檢測儀的研制基于微型光譜儀的單片機系統(tǒng)單片機系統(tǒng)軟件構(gòu)件開發(fā)的技術(shù)研究基于單片機的液體點滴速度自動檢測儀的研制基于單片機系統(tǒng)的多功能溫度測量儀的研制基于PIC單片機的電能采集終端的設(shè)計和應(yīng)用基于單片機的光纖光柵解調(diào)儀的研制氣壓式線性摩擦焊機單片機控制系統(tǒng)的研制基于單片機的數(shù)字磁通門傳感器基于單片機的旋轉(zhuǎn)變壓器-數(shù)字轉(zhuǎn)換器的研究基于單片機的光纖Bragg光柵解調(diào)系統(tǒng)的研究單片機控制的便攜式多功能乳腺治療儀的研制基于C8051F020單片機的多生理信號檢測儀基于單片機的電機運動控制系統(tǒng)設(shè)計Pico專用單片機核的可測性設(shè)計研究基于MCS-51單片機的熱量計基于雙單片機的智能遙測微型氣象站MCS-51單片機構(gòu)建機器人的實踐研究基于單片機的輪軌力檢測基于單片機的GPS定位儀的研究與實現(xiàn)基于單片機的電液伺服控制系統(tǒng)用于單片機系統(tǒng)的MMC卡文件系統(tǒng)研制基于單片機的時控和計數(shù)系統(tǒng)性能優(yōu)化的研究基于單片機和CPLD的粗光柵位移測量系統(tǒng)研究單片機控制的后備式方波UPS提升高職學(xué)生單片機應(yīng)用能力的探究基于單片機控制的自動低頻減載裝置研究基于單片機控制的水下焊接電源的研究基于單片機的多通道數(shù)據(jù)采集系統(tǒng)基于uPSD3234單片機的氚表面污染測量儀的研制基于單片機的紅外測油儀的研究96系列單片機仿真器研究與設(shè)計基于單片機的單晶金剛石刀具刃磨設(shè)備的數(shù)控改造基于單片機的溫度智能控制系統(tǒng)的設(shè)計與實現(xiàn)基于MSP430單片機的電梯門機控制器的研制基于單片機的氣體測漏儀的研究基于三菱M16C/6N系列單片機的CAN/USB協(xié)議轉(zhuǎn)換器基于單片機和DSP的變壓器油色譜在線監(jiān)測技術(shù)研究基于單片機的膛壁溫度報警系統(tǒng)設(shè)計基于AVR單片機的低壓無功補償控制器的設(shè)計基于單片機船舶電力推進電機監(jiān)測系統(tǒng)基于單片機網(wǎng)絡(luò)的振動信號的采集系統(tǒng)基于單片機的大容量數(shù)據(jù)存儲技術(shù)的應(yīng)用研究基于單片機的疊圖機研究與教學(xué)方法實踐基于單片機嵌入式Web服務(wù)器技術(shù)的研究及實現(xiàn)基于AT89S52單片機的通用數(shù)據(jù)采集系統(tǒng)基于單片機的多道脈沖幅度分析儀研究機器人旋轉(zhuǎn)電弧傳感角焊縫跟蹤單片機控制系統(tǒng)基于單片機的控制系統(tǒng)在PLC虛擬教學(xué)實驗中的應(yīng)用研究HYP
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度智能倉儲物流系統(tǒng)采購合同3篇
- 2024英語角活動贊助商借條編制說明6篇
- 2025年度戶外用品攤位租賃與戶外運動合作協(xié)議3篇
- 2024年銷售團隊業(yè)績承諾及客戶滿意度保障協(xié)議3篇
- 2025年度碼頭集裝箱堆場租賃合同范本3篇
- 一次函數(shù)與二元一次方程組教學(xué)設(shè)計
- 年產(chǎn)100萬只塑料托盤建設(shè)項目可行性研究報告
- 2023屆高三生物一輪復(fù)習(xí)易錯點講義基因自由組合定律的特殊分離比分析-
- 醫(yī)院保潔員工作崗位職責與工作(3篇)
- 2024物業(yè)經(jīng)營托管合同模板
- 2024年中考英語閱讀理解D篇真題匯編(附答案)0117
- 智能屋面狀況監(jiān)測與診斷
- 2024-2030年中國玻璃體切除術(shù)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報告
- NB-T20048-2011核電廠建設(shè)項目經(jīng)濟評價方法
- 全國教師資格筆試考試學(xué)習(xí)筆記-小學(xué)科目一《綜合素質(zhì)》
- 耳穴治療糖尿病的國際趨勢
- 宮腔鏡術(shù)后護理查房1
- 高中物理 選修1 第二章 機械振動(2024人教版)
- 中藥飲片行業(yè)研究報告(2024年)
- 2024年國家電投五凌電力限公司招聘歷年高頻考題難、易錯點模擬試題(共500題)附帶答案詳解
- 人教版四年級上冊豎式計算300題及答案
評論
0/150
提交評論