員工薪資系統(tǒng)課程設計模板_第1頁
員工薪資系統(tǒng)課程設計模板_第2頁
員工薪資系統(tǒng)課程設計模板_第3頁
員工薪資系統(tǒng)課程設計模板_第4頁
員工薪資系統(tǒng)課程設計模板_第5頁
已閱讀5頁,還剩86頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

員工薪資系統(tǒng)課程設計資料內容僅供參考,如有不當或者侵權,請聯系本人改正或者刪除。員工薪資管理系統(tǒng)課程設計 學院:班級:學號:姓名:余黎晨李雪敏敬翰林顏學宏指導教師:李竹林目錄一:緒論1.1設計目的1.2設計內容1.3開發(fā)背景1.4開發(fā)環(huán)境1.5組內成員及分工二:需求分析2.1題目分析2.2功能分析2.3數據流圖2.4數據字典2.5系統(tǒng)功能三:系統(tǒng)分析與設計3.1概念結構設計3.2邏輯結構設計3.3物理結構設計四:數據庫實施及運行4.1建基本表4.3功能實現4.4完整代碼五:設計心得及體會一:緒論1.1設計目的 員工薪資系統(tǒng)的主要目的是經過操作計算機代替手工勞動,能夠在該系統(tǒng)內完成員工的信息錄入,查詢,刪除等操作,方便公司的高效化,規(guī)范化管理,有利于員工更好更方便了解自己的薪資信息。系統(tǒng)開發(fā)的總體任務就是實現員工薪資管理的系統(tǒng)化、規(guī)范化和自動化。1.2設計內容題目6:員工薪資管理背景資料某單位現有1000名員工,其中有管理人員、財務人員、技術人員和銷售人員。該單位下設4個科室,即經理室、財務科、技術科和銷售科。工資由基本工資、福利補貼和獎勵工資構成,失業(yè)保險和住房公積金在工資中扣除。每個員工的基本資料有姓名、性別、年齡、單位和職業(yè)(如經理、工程師、銷售員等)。每月個人的最高工資不超過3000元。工資按月發(fā)放,實際發(fā)放的工資金額為工資減去扣除。設計要求:進行需求分析,編寫數據字典。設計E-R圖。實現按照科室錄入個人的基本資料、工資和扣除金額的數據。計算個人的實際發(fā)放工資。按科室、職業(yè)分類統(tǒng)計人數和工資金額。實現分類查詢。能夠刪除辭職人員的數據。開發(fā)工具不限。1.3開發(fā)背景當今社會,隨著企業(yè)人數的不斷增加,企業(yè)員工薪資的管理工作也越來越復雜,資金是企業(yè)生存的核心部分,而資金流動也是關鍵環(huán)節(jié),隨著計算機的普及,計算機管理系統(tǒng)已經原來越來越廣泛的應用于各個中小型企業(yè)中,用計算機取代手工對企業(yè)管理的操作也是勢在必行的,而且人為操作容易造成信息錯誤,紙質材料不易保存,可能會導致企業(yè)運轉出現滯緩現象,影響企業(yè)發(fā)展。為了更好的、更方便地管理企業(yè)中各個成員的工資發(fā)放情況,我們必須要有一個完善的、合理的、便捷的員工薪資管理系統(tǒng)來管理公司員工工資的發(fā)放情況。該員工薪資管理系統(tǒng)主要用于中小型企業(yè)員工的工資發(fā)放管理,此系統(tǒng)的建立和使用有利于員工更好的了解自己的薪資信息,提高公司員工薪資發(fā)放工作的效率,大大減少紙質管理對工作帶來的失誤。1.4開發(fā)環(huán)境開發(fā)平臺:SQLServer開發(fā)工具:EclipseJDBC開發(fā)語言:SQL語言JAVA語言1.5組內成員及分工李雪敏:系統(tǒng)框架撰寫報告顏學宏:代碼編寫數據庫的連接與運行余黎晨:概念結構設計代碼調試敬翰林:邏輯結構設計 需求分析二:需求分析2.1題目分析該題目要求設計一個員工薪資系統(tǒng),實現員工信息的有序化,規(guī)范化,并能進行員工信息錄入,查詢,修改,刪除等操作,能實現分類查詢,2.2功能分析該員工薪資系統(tǒng)能夠實現的功能如下:員工信息的管理,包括姓名,性別,年齡,職業(yè),員工號,部門編號基本信息的錄入,查詢,刪除,修改等操作部門信息的管理,包括部門編號和部門名稱,查詢每個部門的業(yè)績和員工薪資情況薪資信息的管理,包括員工號,部門編號,基本工資,福利補貼,獎勵工資,失業(yè)保險,住房公積金,實發(fā)薪資等信息,統(tǒng)計出員工的基本工資,福利補貼,獎勵工資,扣除失業(yè)保險,住房公積金后所得的工2.3數據流圖 注冊員工注冊員工員工基本信息員工基本信息查詢員工員工工資記錄員工薪資信息形成查詢員工員工工資記錄員工薪資信息形成查詢部門經理查詢部門經理薪資信息管理部門工資記錄部門工資記錄統(tǒng)計分析統(tǒng)計分析財務統(tǒng)計人員財務統(tǒng)計人員2.4數據字典數據字典在數據庫設計中占有很重要的地位,數據字典是各類數據描述的集合,它是進行詳細的數據收集和數據分析后所獲得的主要成果。根據數據流圖對員工薪資管理數據庫數據字典的設計如下所示:2.41數據結構名:員工含義說明:員工信息組成:姓名,性別,年齡,職業(yè),員工號數據項名數據類型長度可否為空含義說明員工號char10no員工編號員工姓名char10no姓名員工年齡char10no年齡部門名稱char10no所屬部門員工職業(yè)char10no擔任職務2.42數據結構名:部門含義說明:部門信息 組成:部門編號,部門名稱數據項名數據類型長度可否為空含義說明部門編號char4no科室類別部門名稱char10no科室名稱2.43數據結構名:工資含義說明:員工薪資信息組成:員工號,部門編號,基本工資,福利補貼,獎勵工資,扣罰工資,失業(yè)保險,住房公積金,實發(fā)薪資數據項名數據類型長度可否為空含義說明員工號char8no員工編號員工工資char4no所的工資獎勵工資money8no基本工資員工薪資money8yes福利和補貼工資2.5系統(tǒng)功能該員工薪資系統(tǒng)的功能如下:三:系統(tǒng)分析與設計3.1概念結構設計 E—R圖設計 員工實體——關系圖性別姓名 性別姓名職業(yè)員工職業(yè)員工員工號年齡員工號年齡部門編號部門編號部門實體——關系圖部門編號部門編號部門部門名稱工資實體——關系圖員工號實發(fā)薪資住房公積金福利補貼基本工資部門編號工資獎勵工資失業(yè)保險員工號實發(fā)薪資住房公積金福利補貼基本工資部門編號工資獎勵工資失業(yè)保險總的E—R圖3.2概念結構設計E-R圖表示的概念模型是用戶數據要求的形式化,它不為任何一個DBMS所支持,而邏輯結構設計的任務就是把概念模型結構轉換成某個具體的DBMS所支持的數據模型,員工薪資管理E-R圖轉換為關系模式為:員工(姓名,性別,年齡,職業(yè),員工號,部門編號)部門(部門編號,部門名稱)薪資(員工號,員工工資,福利補貼,獎勵工資,失業(yè)保險,住房公積金,實發(fā)薪資)四:數據庫實施與運行4.1建基本表 員工信息表部門信息表工資信息表4.3功能實現4.31系統(tǒng)界面展示:4.32員工信息查詢功能按工號查詢:按姓名查詢:4.33員工工資查詢功能:4.34修改員工工資功能:4.35添加員工功能:4.36修改員工信息功能:4.37刪除員工信息功能:4.4完整代碼展示4.41源程序代碼//類DBConnect用于數據庫的連接//導入sql包importjava.sql.*;//創(chuàng)立數據庫連接類DBConnectpublicclassDBConnect{ //靜態(tài)方法提高數據庫的連接效率 publicstaticConnectiongetConn()throwsException { //加載JDBC驅動 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //以系統(tǒng)默認用戶身份,連接數據庫StudentManager returnDriverManager.getConnection("jdbc:odbc:Test","dmj","753"); }}4.42主框架代碼://系統(tǒng)主框架類//導入系統(tǒng)的包importjava.awt.*;importjava.awt.event.*;importjavax.swing.*; //創(chuàng)立主框架類MainFramepublicclassMainFrameextendsJFrameimplementsActionListener{ //創(chuàng)立內容面板 JPanelcontentPane; //創(chuàng)立菜單欄組件的對象 JMenuBarjMenuBar1=newJMenuBar();//菜單條 JMenujMenu0=newJMenu("退出系統(tǒng)");//菜單 JMenuItemjMenuItem0=newJMenuItem("退出");//子菜單 JMenujMenu1=newJMenu("員工管理"); JMenuItemjMenuItem1=newJMenuItem("添加員工"); JMenuItemjMenuItem2=newJMenuItem("修改員工"); JMenuItemjMenuItem3=newJMenuItem("刪除員工"); JMenujMenu2=newJMenu("工資管理"); JMenuItemjMenuItem4=newJMenuItem("添加工資"); JMenuItemjMenuItem5=newJMenuItem("修改工資"); JMenuItemjMenuItem8=newJMenuItem("工資查詢"); JMenujMenu3=newJMenu("員工查詢"); JMenuItemjMenuItem6=newJMenuItem("按工號查詢"); JMenuItemjMenuItem7=newJMenuItem("按姓名查詢"); JMenuItemjMenuItem9=newJMenuItem("互動"); //創(chuàng)立標簽,用于顯示信息 JLabeljLabel1=newJLabel("歡迎使用員工薪資管理系統(tǒng)"); //創(chuàng)立構造方法 publicMainFrame() { try{ //關閉框架窗口時的默認事件方法 setDefaultCloseOperation(EXIT_ON_CLOSE); //調用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //界面初始化方法 privatevoidjbInit()throwsException { //創(chuàng)立內容面板 contentPane=(JPanel)getContentPane(); //設置內容面板的布局為空 contentPane.setLayout(null); //主框架的大小 setSize(newDimension(400,360)); //主框架的標題 setTitle("員工薪資管理系統(tǒng)"); //添加事件監(jiān)聽器 jMenuItem0.addActionListener(this); jMenuItem1.addActionListener(this); jMenuItem2.addActionListener(this); jMenuItem3.addActionListener(this); jMenuItem4.addActionListener(this); jMenuItem5.addActionListener(this); jMenuItem6.addActionListener(this); jMenuItem7.addActionListener(this); jMenuItem8.addActionListener(this); jMenuItem9.addActionListener(this); //添加菜單條到主框架 setJMenuBar(jMenuBar1); //添加菜單到菜單條 jMenuBar1.add(jMenu0); jMenuBar1.add(jMenu1); jMenuBar1.add(jMenu2); jMenuBar1.add(jMenu3); //添加菜單項到菜單 jMenu0.add(jMenuItem0); jMenu1.add(jMenuItem1); jMenu1.add(jMenuItem2); jMenu1.add(jMenuItem3); jMenu2.add(jMenuItem4); jMenu2.add(jMenuItem5); jMenu2.add(jMenuItem8); jMenu3.add(jMenuItem6); jMenu3.add(jMenuItem7); //添加標簽到主框架內容面板 contentPane.add(jLabel1); //設置標簽組件的大小和字體 jLabel1.setFont(newjava.awt.Font("黑體",Font.BOLD,20)); jLabel1.setBounds(newRectangle(65,70,275,55)); } //菜單項事件對應的處理方法 publicvoidactionPerformed(ActionEventactionEvent) { //點擊”系統(tǒng)”菜單下的”退出”菜單項 if(actionEvent.getSource()==jMenuItem0) { System.exit(0); } //點擊”員工管理”菜單下的”添加員工”菜單項 if(actionEvent.getSource()==jMenuItem1) { //創(chuàng)立”添加員工”面板對象 AddEmployeeAddEmp=newAddEmployee(); //移除主框架上原有的內容 this.remove(this.getContentPane()); //加載”添加職工”面板的對象到主框架 this.setContentPane(AddEmp); //令界面可見 this.setVisible(true); } //點擊”員工管理”菜單下的”修改員工”菜單項 if(actionEvent.getSource()==jMenuItem2) { //創(chuàng)立”修改員工”面板對象 ModifyEmployeeModifyEmp=newModifyEmployee(); this.remove(this.getContentPane()); //加載”修改員工”面板的對象到主框架 this.setContentPane(ModifyEmp); this.setVisible(true); } //點擊”員工管理”菜單下的”刪除員工”菜單項 if(actionEvent.getSource()==jMenuItem3) { //創(chuàng)立”刪除員工”面板對象 DeleteEmployeeDeleteEmp=newDeleteEmployee(); this.remove(this.getContentPane()); //加載”刪除員工”面板的對象到主框架 this.setContentPane(DeleteEmp); this.setVisible(true); } //點擊”工資管理”菜單下的”添加工資”菜單項 if(actionEvent.getSource()==jMenuItem4) { //創(chuàng)立工資添加的面板對象 AddSalaryAddSal=newAddSalary(); this.remove(this.getContentPane()); //加載工資添加面板的對象到主框架 this.setContentPane(AddSal); this.setVisible(true); } //點擊”工資管理”菜單下的”修改工資”菜單項 if(actionEvent.getSource()==jMenuItem5) { //創(chuàng)立工資修改的面板對象 ModifySalaryModifySal=newModifySalary(); this.remove(this.getContentPane()); //加載工資修改面板的對象到主框架 this.setContentPane(ModifySal); this.setVisible(true); } //點擊”工資管理”菜單下的”工資查詢”菜單項 if(actionEvent.getSource()==jMenuItem8) { //創(chuàng)立工資修改的面板對象 SalaryInquireSalaryInq=newSalaryInquire(); this.remove(this.getContentPane()); //加載工資修改面板的對象到主框架 this.setContentPane(SalaryInq); this.setVisible(true); } //點擊”員工查詢”菜單下的”按工號查詢”菜單項 if(actionEvent.getSource()==jMenuItem6) { //創(chuàng)立”按工號查詢”面板對象 InquireOnGHOnGH=newInquireOnGH(); //移除主框架上原有的內容 this.remove(this.getContentPane()); this.setContentPane(OnGH); this.setVisible(true); } }}4.43主函數Main代碼://系統(tǒng)的主程序類Main//導入包importjava.awt.*;importjavax.swing.*;//創(chuàng)立主系統(tǒng)類classMain{ publicstaticvoidmain(String[]args) { //創(chuàng)立主界面,調用MainFrame()構造函數和方法 MainFrameframe=newMainFrame(); //獲取屏幕尺寸 DimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize(); //獲取主界面的窗體尺寸 DimensionframeSize=frame.getSize(); //令主界面窗體居中 if(frameSize.height>screenSize.height) frameSize.height=screenSize.height; if(frameSize.width>screenSize.width) frameSize.width=screenSize.width; frame.setLocation((screenSize.width-frameSize.width)/2,(screenSize.height-frameSize.height)/2); //令主界面顯示 frame.setVisible(true); }}4.44員工信息查詢代碼按工號查詢代碼//導入系統(tǒng)的類包importjava.awt.*;im//"按員工號查詢"面板類InquireOnGHportjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)立”按員工號查詢”類publicclassInquireOnGHextendsJPanelimplementsActionListener{ //聲明連接數據庫對象 Connectioncon; //聲明SQL語句對象 Statementst; //創(chuàng)立組件對象:標簽、文本行、單選 JLabeljLabel1=newJLabel("請輸入員工號:"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("查找"); JTextAreajTextArea1=newJTextArea(); //構造方法 publicInquireOnGH() { try{ //調用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //面板初始化方法 privatevoidjbInit()throwsException { //連接數據庫 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //設置各組件的大小 jLabel1.setFont(newjava.awt.Font("黑體",Font.BOLD,16)); jLabel1.setBounds(newRectangle(46,4,222,32)); jTextField1.setBounds(newRectangle(47,37,247,31)); jButton1.setBounds(newRectangle(47,86,247,30)); jTextArea1.setBounds(newRectangle(24,130,305,109)); //添加按鈕動作事件 jButton1.addActionListener(this); //添加組件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jTextArea1); this.add(jButton1); } //點擊按鈕事件 publicvoidactionPerformed(ActionEvente) { //獲取輸入的員工號 StringEmployeeID=jTextField1.getText(); //清空文本區(qū)原有的內容 jTextArea1.setText(""); try{ //利用st對象執(zhí)行SQL語句,返回結果集對象 ResultSetrs=st.executeQuery("select*fromEmployeewhere員工號='"+EmployeeID+"'"); //處理結果集 if(rs.next()) { jTextArea1.setText("員工號:"+rs.getString("員工號")+"\n"+"員工姓名:"+rs.getString("員工姓名")+"\n"+"員工性別:"+rs.getString("員工性別")+"\n"+"員工年齡:"+rs.getString("員工年齡")+"\n"+"部門名稱:"+rs.getString("部門名稱")+"\n"+"員工職業(yè):"+rs.getString("員工職業(yè)")+"\n"); } else { JOptionPane.showMessageDialog(this,"沒有這個員工號的員工!"); } } catch(Exceptionex){ //利用消息對話框提示查詢失敗 JOptionPane.showMessageDialog(this,"員工查詢失敗!"); } }}按姓名查詢//"按員工姓名查詢"面板類InquireOnName//導入系統(tǒng)的類包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)立”按員工姓名查詢”類publicclassInquireOnNameextendsJPanelimplementsActionListener{ //聲明連接數據庫對象 Connectioncon; //聲明SQL語句對象 Statementst; //創(chuàng)立組件對象:標簽、文本行、單選 JLabeljLabel1=newJLabel("請輸入員工姓名:"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("查找"); JTextAreajTextArea1=newJTextArea(); //構造方法 publicInquireOnName() { try{ //調用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //面板初始化方法 privatevoidjbInit()throwsException { //連接數據庫 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //設置各組件的大小 jLabel1.setFont(newjava.awt.Font("黑體",Font.BOLD,16)); jLabel1.setBounds(newRectangle(46,4,222,32)); jTextField1.setBounds(newRectangle(47,37,247,31)); jButton1.setBounds(newRectangle(47,86,247,30)); jTextArea1.setBounds(newRectangle(24,130,305,109)); //添加按鈕動作事件 jButton1.addActionListener(this); //添加組件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jTextArea1); this.add(jButton1); } //點擊按鈕事件 publicvoidactionPerformed(ActionEvente) { //獲取輸入的員工的姓名 StringEmployeeName=jTextField1.getText(); //清空文本區(qū)原有的內容 jTextArea1.setText(""); try{ //利用st對象執(zhí)行SQL語句,返回結果集對象 ResultSetrs=st.executeQuery("select*fromEmployeewhere員工姓名='"+EmployeeName+"'"); //處理結果集 if(rs.next()) { jTextArea1.setText("員工號:"+rs.getString("員工號")+"\n"+"員工姓名:"+rs.getString("員工姓名")+"\n"+"員工性別:"+rs.getString("員工性別")+"\n"+"員工年齡:"+rs.getString("員工年齡")+"\n"+"部門名稱:"+rs.getString("部門名稱")+"\n"+"員工職業(yè):"+rs.getString("員工職業(yè)")+"\n"); } else { JOptionPane.showMessageDialog(this,"沒有這個員工號的員工!"); } } catch(Exceptionex){ //利用消息對話框提示查詢失敗 JOptionPane.showMessageDialog(this,"員工查詢失敗!"); } }}4.45員工工資查詢代碼//"工資查詢"面板類SalaryInquire//導入系統(tǒng)的類包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)立”工資查詢”類publicclassSalaryInquireextendsJPanelimplementsActionListener{ //聲明連接數據庫對象 Connectioncon; //聲明SQL語句對象 Statementst; //創(chuàng)立組件對象:標簽、文本行、單選 JLabeljLabel1=newJLabel("請輸入要查詢的員工號:"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("工資查詢"); JTextAreajTextArea1=newJTextArea(); //構造方法 publicSalaryInquire() { try{ //調用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //面板初始化方法 privatevoidjbInit()throwsException { //連接數據庫 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //設置各組件的大小 jLabel1.setFont(newjava.awt.Font("黑體",Font.BOLD,16)); jLabel1.setBounds(newRectangle(46,4,222,32)); jTextField1.setBounds(newRectangle(47,37,247,31)); jButton1.setBounds(newRectangle(47,86,247,30)); jTextArea1.setBounds(newRectangle(24,130,305,109)); //添加按鈕動作事件 jButton1.addActionListener(this); //添加組件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jTextArea1); this.add(jButton1); } //點擊按鈕事件 publicvoidactionPerformed(ActionEvente) { //獲取輸入的員工號 StringEmployeeID=jTextField1.getText(); //清空文本區(qū)原有的內容 jTextArea1.setText(""); try{ //利用st對象執(zhí)行SQL語句,返回結果集對象 ResultSetrs=st.executeQuery("select*fromSalarywhere員工號='"+EmployeeID+"'"); //處理結果集 if(rs.next()) { jTextArea1.setText("員工號:"+rs.getString("員工號")+"\n"+"員工工資:"+rs.getString("員工工資")+"\n"); } else { JOptionPane.showMessageDialog(this,"該員工號的員工沒有工資記錄!"); } } catch(Exceptionex){ //利用消息對話框提示查詢失敗 JOptionPane.showMessageDialog(this,"工資查詢失敗!"); } }}4.46修改工資代碼//”修改工資”面板類ModifySalary//導入系統(tǒng)的類包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)立”修改工資”面板類publicclassModifySalaryextendsJPanelimplementsActionListener{ //聲明連接數據庫對象 Connectioncon; //聲明SQL語句對象 Statementst; //創(chuàng)立組件對象:標簽、文本行、單選 JLabeljLabel1=newJLabel("請輸入員工號:"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("查找該員工"); JLabeljLabel2=newJLabel("員工號:"); JTextFieldjTextField2=newJTextField(); JLabeljLabel3=newJLabel("員工工資:"); JTextFieldjTextField3=newJTextField(); JButtonjButton2=newJButton("修改工資"); //構造方法 publicModifySalary() { try{ //調用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //面板初始化方法 privatevoidjbInit()throwsException { //連接數據庫 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //設置各組件的大小 jLabel1.setFont(newjava.awt.Font("楷體",Font.BOLD,14)); jLabel1.setBounds(newRectangle(40,25,140,30)); jTextField1.setBounds(newRectangle(185,25,120,30)); jButton1.setBounds(newRectangle(110,65,120,30)); jLabel2.setFont(newjava.awt.Font("楷體",Font.BOLD,14)); jLabel2.setBounds(newRectangle(90,125,80,30)); jTextField2.setBounds(newRectangle(170,125,80,30)); jLabel3.setFont(newjava.awt.Font("楷體",Font.BOLD,14)); jLabel3.setBounds(newRectangle(90,160,80,30)); jTextField3.setBounds(newRectangle(170,160,80,30)); jButton2.setBounds(newRectangle(120,200,100,30)); //添加按鈕動作事件 jButton1.addActionListener(this); jButton2.addActionListener(this); //添加組件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jButton1); this.add(jLabel2); this.add(jTextField2); jTextField2.setEditable(false); this.add(jLabel3); this.add(jTextField3); this.add(jButton2); } //點擊按鈕事件 publicvoidactionPerformed(ActionEventactionevent) { //點擊”查找該員工”按鈕 if(actionevent.getSource()==jButton1) { //獲取輸入的員工號 StringEmployeeID=jTextField1.getText(); try{ //利用st對象執(zhí)行SQL語句,返回結果集對象 ResultSetrs=st.executeQuery("select*fromSalarywhere員工號='"+EmployeeID+"'"); //處理結果集 if(rs.next()) { jTextField2.setText(rs.getString("員工號")); jTextField3.setText(rs.getString("員工工資")); } else { JOptionPane.showMessageDialog(this,"沒有這個員工號的員工!"); } } catch(Exceptionex){ //利用消息對話框提示查詢失敗 JOptionPane.showMessageDialog(this,"工資修改失敗!"); } } //點擊”修改工資”按鈕 if(actionevent.getSource()==jButton2) { //獲取用戶更改的工資 try{ //利用st對象執(zhí)行SQL語句,進行修改操作 st.executeUpdate("updateSalaryset員工工資='"+jTextField3.getText()+"'where員工號='"+jTextField2.getText()+"'"); //利用消息對話框提示工資修改成功 JOptionPane.showMessageDialog(this,"工資修改成功!"); } catch(Exceptionex){ //利用消息對話框提示異常的信息 JOptionPane.showMessageDialog(this,"工資修改失敗!"); ex.printStackTrace(); } } }}4.47員工添加代碼//添加員工面板類AddEmployee//導入系統(tǒng)的類包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)立”添加員工”面板類publicclassAddEmployeeextendsJPanelimplementsActionListener{ //聲明連接數據庫對象 Connectioncon; //聲明SQL語句對象 Statementst; //創(chuàng)立組件對象:標簽、文本行、單選 JLabeljLabel1=newJLabel("員工號"); JLabeljLabel2=newJLabel("員工姓名"); JLabeljLabel3=newJLabel("員工性別"); JLabeljLabel4=newJLabel("員工年齡"); JLabeljLabel5=newJLabel("部門名稱"); JLabeljLabel6=newJLabel("員工職業(yè)"); JTextFieldjTextField1=newJTextField(); JTextFieldjTextField2=newJTextField(); JTextFieldjTextField3=newJTextField(); JTextFieldjTextField4=newJTextField(); JTextFieldjTextField5=newJTextField(); JRadioButtonjRadioButton1=newJRadioButton("男"); JRadioButtonjRadioButton2=newJRadioButton("女"); ButtonGroupbuttonGroup1=newButtonGroup(); JButtonjButton1=newJButton("添加員工"); //構造方法 publicAddEmployee() { try{ //調用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //界面初始化方法 privatevoidjbInit()throwsException { //連接數據庫 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //設置各組件的大小 jLabel1.setBounds(newRectangle(21,17,64,24)); jLabel2.setBounds(newRectangle(21,51,53,22)); jLabel3.setBounds(newRectangle(21,86,61,27)); jLabel4.setBounds(newRectangle(21,122,59,25)); jLabel5.setBounds(newRectangle(21,168,54,24)); jLabel6.setBounds(newRectangle(21,205,54,24)); jTextField1.setBounds(newRectangle(102,10,200,30)); jTextField2.setBounds(newRectangle(102,49,200,30)); jTextField3.setBounds(newRectangle(102,117,80,33)); jTextField4.setBounds(newRectangle(102,163,200,29)); jTextField5.setBounds(newRectangle(102,200,200,29)); jRadioButton1.setBounds(newRectangle(102,83,65,30)); jRadioButton2.setBounds(newRectangle(190,85,85,30)); jButton1.setBounds(newRectangle(130,240,150,32)); //設置單選按鈕被選中 jRadioButton1.setSelected(true); //添加按鈕動作事件 jButton1.addActionListener(this); //添加組件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jLabel2); this.add(jTextField2); this.add(jLabel3); buttonGroup1.add(jRadioButton1); buttonGroup1.add(jRadioButton2); this.add(jRadioButton1); this.add(jRadioButton2); this.add(jLabel4); this.add(jTextField3); this.add(jLabel5); this.add(jTextField4); this.add(jLabel6); this.add(jTextField5); this.add(jButton1); } //點擊按鈕事件 publicvoidactionPerformed(ActionEvente) { //獲取用戶輸入的信息 StringEmployeeID=jTextField1.getText(); StringEmployeeName=jTextField2.getText(); StringEmployeeSex=""; if(jRadioButton1.isSelected()) EmployeeSex+="男"; if(jRadioButton2.isSelected()) EmployeeSex+="女"; StringEmployeeAge=jTextField3.getText(); StringEmployeeAddress=jTextField4.getText(); StringEmployeePhone=jTextField5.getText(); try{ //設置日期格式 st.execute("setdateformatymd"); //利用st對象執(zhí)行SQL語句,進行插入操作 st.executeUpdate("insertintoEmployeevalues('"+EmployeeID+"','"+EmployeeName+"','"+EmployeeSex+"','"+EmployeeAge+"','"+EmployeeAddress+"','"+EmployeePhone+"')"); //利用消息對話框提示員工添加成功 JOptionPane.showMessageDialog(this,"員工添加成功!"); //清空文本行的內容 jTextField1.setText(""); jTextField2.setText(""); jTextField3.setText(""); jTextField4.setText(""); jTextField5.setText(""); } catch(Exceptionex){ //利用消息對話框提示異常的信息 JOptionPane.showMessageDialog(this,"員工添加失敗!"); ex.printStackTrace(); } }}4.48修改員工信息代碼//”員工信息修改”面板類ModifyEmployee//導入系統(tǒng)的類包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)立”員工信息修改資”類publicclassModifyEmployeeextendsJPanelimplementsActionListener{ //聲明連接數據庫對象 Connectioncon; //聲明SQL語句對象 Statementst; //創(chuàng)立組件對象:標簽、文本行、單選 JLabeljLabel1=newJLabel("請輸入員工號:"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("查找該員工"); JLabeljLabel2=newJLabel("員工號:"); JTextFieldjTextField2=newJTextField(); JLabeljLabel3=newJLabel("員工姓名:"); JTextFieldjTextField3=newJTextField(); JLabeljLabel4=newJLabel("員工性別:"); JTextFieldjTextField4=newJTextField(); JLabeljLabel5=newJLabel("員工年齡:"); JTextFieldjTextField5=newJTextField(); JLabeljLabel6=newJLabel("部門名稱:"); JTextFieldjTextField6=newJTextField(); JLabeljLabel7=newJLabel("員工職業(yè):"); JTextFieldjTextField7=newJTextField(); JButtonjButton2=newJButton("修改員工信息"); //構造方法 publicModifyEmployee() { try{ //調用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //面板初始化方法 privatevoidjbInit()throwsException { //連接數據庫 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //設置各組件的大小 jLabel1.setFont(newjava.awt.Font("楷體",Font.BOLD,14)); jLabel1.setBounds(newRectangle(40,15,140,30)); jTextField1.setBounds(newRectangle(185,15,120,30)); jButton1.setBounds(newRectangle(110,55,150,30)); jLabel2.setFont(newjava.awt.Font("楷體",Font.BOLD,14)); jLabel2.setBounds(newRectangle(20,105,80,30)); jTextField2.setBounds(newRectangle(100,105,80,30)); jLabel3.setFont(newjava.awt.Font("楷體",Font.BOLD,14)); jLabel3.setBounds(newRectangle(190,105,80,30)); jTextField3.setBounds(newRectangle(270,105,80,30)); jLabel4.setFont(newjava.awt.Font("楷體",Font.BOLD,14)); jLabel4.setBounds(newRectangle(20,145,80,30)); jTextField4.setBounds(newRectangle(100,145,80,30)); jLabel5.setFont(newjava.awt.Font("楷體",Font.BOLD,14)); jLabel5.setBounds(newRectangle(190,145,80,30)); jTextField5.setBounds(newRectangle(270,145,80,30)); jLabel6.setFont(newjava.awt.Font("楷體",Font.BOLD,14)); jLabel6.setBounds(newRectangle(20,185,80,30)); jTextField6.setBounds(newRectangle(100,185,80,30)); jLabel7.setFont(newjava.awt.Font("楷體",Font.BOLD,14)); jLabel7.setBounds(newRectangle(190,185,80,30)); jTextField7.setBounds(newRectangle(270,185,80,30)); jButton2.setBounds(newRectangle(120,240,150,30)); //添加按鈕動作事件 jButton1.addActionListener(this); jButton2.addActionListener(this); //添加組件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jButton1); this.add(jLabel2); this.add(jTextField2); jTextField2.setEditable(false); this.add(jLabel3); this.add(jTextField3); this.add(jLabel4); this.add(jTextField4); this.add(jLabel5); this.add(jTextField5); this.add(jLabel6); this.add(jTextField6); this.add(jLabel7); this.add(jTextField7); this.add(jButton2); } //點擊按鈕事件 publicvoidactionPerformed(ActionEventactionevent) { //點擊”查找該員工”按鈕 if(actionevent.getSource()==jButton1) { try{ //利用st對象執(zhí)行SQL語句,返回結果集對象 ResultSetrs=st.executeQuery("select*fromEmployeewhere員工號='"+jTextField1.getText()+"'"); //處理結果集 if(rs.next()) { jTextField2.setText(rs.getString("員工號")); jTextField3.setText(rs.getString("員工姓名")); jTextField4.setText(rs.getString("員工性別")); jTextField5.setText(rs.getString("員工年齡")); jTextField6.setText(rs.getString("部門名稱")); jTextField7.setText(rs.getString("員工職業(yè)")); } else { JOptionPane.showMessageDialog(this,"沒有這個員工號的員工!"); } } catch(Exceptionex){ //利用消息對話框提示查詢失敗 JOptionPane.showMessageDialog(this,"員工信息修改失敗!"); } } //點擊”修改工資”按鈕 if(actionevent.getSource()==jButton2) { //獲取用戶更改的工資 try{ //利用st對象執(zhí)行SQL語句,進行插入操作 st.executeUpdate("updateEmployeeset員工姓名='"+jTextField3.getText()+"'where員工號='"+jTextField2.getText()+"'"); st.executeUpdate("updateEmployeeset員工性別='"+jTextField4.getText()+"'where員工號='"+jTextField2.getText()+"'"); st.executeUpdate("updateEmployeeset員工年齡='"+jTextField5.getText()+"'where員工號='"+jTextField2.getText()+"'"); st.executeUpdate("updateEmployeeset部門名稱='"+jTextField6.getText()+"'where員工號='"+jTextField2.getText()+"'"); st.executeUpdate("updateEmployeeset員工職業(yè)='"+jTextField7.getText()+"'where員工號='"+jTextField2.getText()+"'"); //利用消息對話框提示員工信息修改成功 JOptionPane.showMessageDialog(this,"員工信息修改成功!"); } catch(Exceptionex){ //利用消息對話框提示異常的信息 JOptionPane.showMessageDialog(this,"員工信息修改失敗!"); ex.printStackTrace(); } } }}4.49刪除員工代碼//刪除員工”面板類DeleteEmployee//導入系統(tǒng)的類包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)立”刪除員工”類publicclassDeleteEmployeeextendsJPanelimplementsActionListener{ //聲明連接數據庫對象 Connectioncon; //聲明SQL語句對象 Statementst; //創(chuàng)立組件對象 JLabeljLabel1=newJLabel("請輸入待刪除的員工號"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("刪除"); //構造方法 publicDeleteEmployee() { try{ //調用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //界面初始化方法 privatevoidjbInit()throwsException { //連接數據庫 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //設置各組件的大小 jLabel1.setFont(newjava.awt.Font("黑體",Font.BOLD,14)); jLabel1.setBounds(newRectangle(70,20,200,30)); jTextField1.setBounds(newRectangle(70,80,207,41)); jButton1.setBounds(newRectangle(70,175,205,36)); //添加按鈕動作事件 jButton1.addActionListener(this); //添加組件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jButton1); } //點擊按鈕事件 publicvoidactionPerformed(ActionEvente) { //獲取用戶輸入的員工號 StringEmployeeID=jTextField1.getText(); //要求用戶確認刪除 if(JOptionPane.showConfirmDialog(this,"確認要刪除嗎?")==JOptionPane.YES_OPTION) { try{ //利用st對象執(zhí)行SQL刪除操作 st.executeUpdate("deletefromEmployeewhere員工號='"+EmployeeID+"'"); //利用消息對話框提示刪除操作成功 JOptionPane.showMessageDialog(this,"員工刪除操作,執(zhí)行成功!"); //清空輸入學號的文本行 jTextField1.setText(""); } catch(Exceptionex){ //利用消息對話框提示不能刪除 JOptionPane.showMessageDialog(this,"員工刪除操作,執(zhí)行失敗!"); } }}}4.50幫助互動代碼://”幫助”面板類EmployeeHelp//導入系統(tǒng)的類包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)立”幫助”面板類publicclassEmployeeHelpextendsJPanel{ //創(chuàng)立組件對象:標簽 JLabeljLabel1=newJLabel("若有問題請聯系:"); JLabeljLabel4=newJLabel("敬翰林"); JLabeljLabel2=newJLabel("QQ:81652794"); JLabeljLabel3=newJLabel("郵箱:"); //構造方法 publicEmployeeHelp() { tr

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論