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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、.員工薪資管理系統(tǒng)課程設(shè)計 學(xué)院:班級:學(xué)號:姓名:余黎晨 李雪敏 敬翰林 顏學(xué)宏指導(dǎo)教師:李竹林 目錄一:緒論1.1設(shè)計目的 1.2設(shè)計內(nèi)容 1.3開發(fā)背景 1.4開發(fā)環(huán)境 1.5組內(nèi)成員及分工 二:需求分析 2.1題目分析 2.2功能分析 2.3數(shù)據(jù)流圖 2.4數(shù)據(jù)字典 2.5系統(tǒng)功能 三:系統(tǒng)分析與設(shè)計 3.1概念結(jié)構(gòu)設(shè)計 3.2邏輯結(jié)構(gòu)設(shè)計 3.3 物理結(jié)構(gòu)設(shè)計 四:數(shù)據(jù)庫實施及運行 4.1建基本表 4.3功能實現(xiàn) 4.4完整代碼五:設(shè)計心得及體會 一:緒論1.1設(shè)計目的 員工薪資系統(tǒng)的主要目的是通過操作計算機(jī)代替手工勞動,能夠在該系統(tǒng)內(nèi)完成員工的信息錄入,查詢,刪除等操作,方便公司的

2、高效化,規(guī)范化管理,有利于員工更好更方便了解自己的薪資信息。 系統(tǒng)開發(fā)的總體任務(wù)就是實現(xiàn)員工薪資管理的系統(tǒng)化、規(guī)范化和自動化。1.2設(shè)計內(nèi)容 題目:員工薪資管理 1) 背景資料a) 某單位現(xiàn)有1000名員工,其中有管理人員、財務(wù)人員、技術(shù)人員和銷售人員。b) 該單位下設(shè)4個科室,即經(jīng)理室、財務(wù)科、技術(shù)科和銷售科。c) 工資由基本工資、福利補(bǔ)貼和獎勵工資構(gòu)成,失業(yè)保險和住房公積金在工資中扣除。d) 每個員工的基本資料有姓名、性別、年齡、單位和職業(yè)(如經(jīng)理、工程師、銷售員等)。e) 每月個人的最高工資不超過3000元。工資按月發(fā)放,實際發(fā)放的工資金額為工資減去扣除。2) 設(shè)計要求:a) 進(jìn)行需求分

3、析,編寫數(shù)據(jù)字典。b) 設(shè)計E-R圖。c) 實現(xiàn)按照科室錄入個人的基本資料、工資和扣除金額的數(shù)據(jù)。d) 計算個人的實際發(fā)放工資。e) 按科室、職業(yè)分類統(tǒng)計人數(shù)和工資金額。f) 實現(xiàn)分類查詢。g) 能夠刪除辭職人員的數(shù)據(jù)。h) 開發(fā)工具不限。1.3開發(fā)背景當(dāng)今社會,隨著企業(yè)人數(shù)的不斷增加,企業(yè)員工薪資的管理工作也越來越復(fù)雜,資金是企業(yè)生存的核心部分,而資金流動也是關(guān)鍵環(huán)節(jié),隨著計算機(jī)的普及,計算機(jī)管理系統(tǒng)已經(jīng)原來越來越廣泛的應(yīng)用于各個中小型企業(yè)中,用計算機(jī)取代手工對企業(yè)管理的操作也是勢在必行的,并且人為操作容易造成信息錯誤,紙質(zhì)材料不易保存,可能會導(dǎo)致企業(yè)運轉(zhuǎn)出現(xiàn)滯緩現(xiàn)象,影響企業(yè)發(fā)展。為了更好

4、的、更方便地管理企業(yè)中各個成員的工資發(fā)放情況,我們必須要有一個完善的、合理的、便捷的員工薪資管理系統(tǒng)來管理公司員工工資的發(fā)放情況。該員工薪資管理系統(tǒng)主要用于中小型企業(yè)員工的工資發(fā)放管理,此系統(tǒng)的建立和使用有利于員工更好的了解自己的薪資信息,提高公司員工薪資發(fā)放工作的效率,大大減少紙質(zhì)管理對工作帶來的失誤。1.4開發(fā)環(huán)境 開發(fā)平臺:SQL Server2005 開發(fā)工具:Eclipse JDBC 開發(fā)語言:SQL語言 JAVA語言1.5組內(nèi)成員及分工李雪敏:系統(tǒng)框架 撰寫報告顏學(xué)宏:代碼編寫 數(shù)據(jù)庫的連接與運行 余黎晨:概念結(jié)構(gòu)設(shè)計 代碼調(diào)試 敬翰林:邏輯結(jié)構(gòu)設(shè)計 需求分析 二:需求分析2.1題

5、目分析 該題目要求設(shè)計一個員工薪資系統(tǒng),實現(xiàn)員工信息的有序化,規(guī)范化,并能進(jìn)行員工信息錄入,查詢,修改,刪除等操作,能實現(xiàn)分類查詢,2.2功能分析 該員工薪資系統(tǒng)能夠?qū)崿F(xiàn)的功能如下:員工信息的管理,包括姓名,性別,年齡,職業(yè),員工號,部門編號基本信息的錄入,查詢,刪除,修改等操作部門信息的管理,包括部門編號和部門名稱,查詢每個部門的業(yè)績和員工薪資情況薪資信息的管理,包括員工號,部門編號,基本工資,福利補(bǔ)貼,獎勵工資,失業(yè)保險,住房公積金,實發(fā)薪資等信息,統(tǒng)計出員工的基本工資,福利補(bǔ)貼,獎勵工資,扣除失業(yè)保險,住房公積金后所得的工2.3數(shù)據(jù)流圖注冊員工員工基本信息查詢員工員工工資記錄員工薪資信息

6、形成查詢部門經(jīng)理薪資信息管理部門工資記錄統(tǒng)計分析財務(wù)統(tǒng)計人員2.4數(shù)據(jù)字典數(shù)據(jù)字典在數(shù)據(jù)庫設(shè)計中占有很重要的地位,數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析后所獲得的主要成果。根據(jù)數(shù)據(jù)流圖對員工薪資管理數(shù)據(jù)庫數(shù)據(jù)字典的設(shè)計如下所示:2.41數(shù)據(jù)結(jié)構(gòu)名:員工含義說明:員工信息組成:姓名,性別,年齡,職業(yè),員工號數(shù)據(jù)項名數(shù)據(jù)類型長度可否為空含義說明員工號char10no員工編號員工姓名char10 no姓名員工年齡char 10 no年齡部門名稱char 10 no所屬部門員工職業(yè)char 10 no擔(dān)任職務(wù)2.42數(shù)據(jù)結(jié)構(gòu)名:部門含義說明:部門信息組成:部門編號,部門名稱數(shù)據(jù)

7、項名數(shù)據(jù)類型長度可否為空含義說明部門編號char4no科室類別部門名稱char10no科室名稱2.43數(shù)據(jù)結(jié)構(gòu)名:工資含義說明:員工薪資信息組成:員工號,部門編號,基本工資,福利補(bǔ)貼,獎勵工資,扣罰工資,失業(yè)保險,住房公積金,實發(fā)薪資數(shù)據(jù)項名數(shù)據(jù)類型長度可否為空含義說明員工號char8no員工編號員工工資char4no所的工資獎勵工資money8no基本工資員工薪資money8yes福利和補(bǔ)貼工資 2.5系統(tǒng)功能該員工薪資系統(tǒng)的功能如下: 三:系統(tǒng)分析與設(shè)計3.1概念結(jié)構(gòu)設(shè)計 ER圖設(shè)計員工實體關(guān)系圖性別姓名職業(yè)員工員工號年齡部門編號部門實體關(guān)系圖 部門編號部門部門名稱工資實體關(guān)系圖員工號實發(fā)

8、薪資住房公積金福利補(bǔ)貼基本工資部門編號工資獎勵工資失業(yè)保險總的ER圖 3.2概念結(jié)構(gòu)設(shè)計 E-R圖表示的概念模型是用戶數(shù)據(jù)要求的形式化,它不為任何一個DBMS所支持,而邏輯結(jié)構(gòu)設(shè)計的任務(wù)就是把概念模型結(jié)構(gòu)轉(zhuǎn)換成某個具體的DBMS所支持的數(shù)據(jù)模型,員工薪資管理E-R圖轉(zhuǎn)換為關(guān)系模式為:員工(姓名,性別,年齡,職業(yè),員工號,部門編號)部門(部門編號,部門名稱)薪資(員工號,員工工資,福利補(bǔ)貼,獎勵工資,失業(yè)保險,住房公積金,實發(fā)薪資) 四:數(shù)據(jù)庫實施與運行4.1建基本表 員工信息表 部門信息表 工資信息表 4.3功能實現(xiàn) 4.31系統(tǒng)界面展示: 4.32員工信息查詢功能 按工號查詢: 按姓名查詢:

9、 4.33員工工資查詢功能: 4.34修改員工工資功能: 4.35添加員工功能: 4.36修改員工信息功能: 4.37刪除員工信息功能: 4.4完整代碼展示 4.41源程序代碼/類DBConnect用于數(shù)據(jù)庫的連接/導(dǎo)入sql包import java.sql.*;/創(chuàng)建數(shù)據(jù)庫連接類DBConnectpublic class DBConnect/靜態(tài)方法提高數(shù)據(jù)庫的連接效率public static Connection getConn() throws Exception/加載JDBC驅(qū)動Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"

10、;);/以系統(tǒng)默認(rèn)用戶身份,連接數(shù)據(jù)庫StudentManagerreturn DriverManager.getConnection("jdbc:odbc:Test","dmj","753");4.42主框架代碼: /系統(tǒng)主框架類/導(dǎo)入系統(tǒng)的包import java.awt.*;import java.awt.event.*;import javax.swing.*;/創(chuàng)建主框架類MainFramepublic class MainFrame extends JFrame implements ActionListener/創(chuàng)建內(nèi)容

11、面板JPanel contentPane;/創(chuàng)建菜單欄組件的對象JMenuBar jMenuBar1=new JMenuBar();/菜單條JMenu jMenu0=new JMenu("退出系統(tǒng)");/菜單JMenuItem jMenuItem0=new JMenuItem("退出");/子菜單JMenu jMenu1=new JMenu("員工管理");JMenuItem jMenuItem1=new JMenuItem("添加員工");JMenuItem jMenuItem2=new JMenuItem(&q

12、uot;修改員工");JMenuItem jMenuItem3=new JMenuItem("刪除員工");JMenu jMenu2=new JMenu("工資管理");JMenuItem jMenuItem4=new JMenuItem("添加工資");JMenuItem jMenuItem5=new JMenuItem("修改工資");JMenuItem jMenuItem8=new JMenuItem("工資查詢");JMenu jMenu3=new JMenu("員工

13、查詢");JMenuItem jMenuItem6=new JMenuItem("按工號查詢");JMenuItem jMenuItem7=new JMenuItem("按姓名查詢");JMenuItem jMenuItem9=new JMenuItem("互動");/創(chuàng)建標(biāo)簽,用于顯示信息JLabel jLabel1=new JLabel("歡迎使用員工薪資管理系統(tǒng)");/創(chuàng)建構(gòu)造方法public MainFrame()try/關(guān)閉框架窗口時的默認(rèn)事件方法setDefaultCloseOperation

14、(EXIT_ON_CLOSE);/調(diào)用初始化方法jbInit();catch(Exception exception)exception.printStackTrace();/界面初始化方法private void jbInit() throws Exception/創(chuàng)建內(nèi)容面板contentPane =(JPanel) getContentPane();/設(shè)置內(nèi)容面板的布局為空contentPane.setLayout(null);/主框架的大小setSize(new Dimension(400,360);/主框架的標(biāo)題setTitle(" 員工薪資管理系統(tǒng)");/添加事

15、件監(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.addAc

16、tionListener(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(jMen

17、uItem4);jMenu2.add(jMenuItem5);jMenu2.add(jMenuItem8);jMenu3.add(jMenuItem6);jMenu3.add(jMenuItem7);/添加標(biāo)簽到主框架內(nèi)容面板contentPane.add(jLabel1);/設(shè)置標(biāo)簽組件的大小和字體jLabel1.setFont(new java.awt.Font("黑體",Font.BOLD,20);jLabel1.setBounds(new Rectangle(65,70,275,55);/菜單項事件對應(yīng)的處理方法public void actionPerformed

18、(ActionEvent actionEvent)/點擊“系統(tǒng)”菜單下的“退出”菜單項if(actionEvent.getSource()=jMenuItem0)System.exit(0);/點擊“員工管理”菜單下的“添加員工”菜單項if(actionEvent.getSource()=jMenuItem1)/創(chuàng)建“添加員工”面板對象AddEmployee AddEmp=new AddEmployee();/移除主框架上原有的內(nèi)容this.remove(this.getContentPane();/加載“添加職工”面板的對象到主框架this.setContentPane(AddEmp);/令

19、界面可見this.setVisible(true);/點擊“員工管理”菜單下的“修改員工”菜單項if(actionEvent.getSource()=jMenuItem2)/創(chuàng)建“修改員工”面板對象ModifyEmployee ModifyEmp=new ModifyEmployee();this.remove(this.getContentPane();/加載“修改員工”面板的對象到主框架this.setContentPane(ModifyEmp);this.setVisible(true);/點擊“員工管理”菜單下的“刪除員工”菜單項if(actionEvent.getSource()=j

20、MenuItem3)/創(chuàng)建“刪除員工”面板對象DeleteEmployee DeleteEmp=new DeleteEmployee();this.remove(this.getContentPane();/加載“刪除員工”面板的對象到主框架this.setContentPane(DeleteEmp);this.setVisible(true);/點擊“工資管理”菜單下的“添加工資”菜單項if(actionEvent.getSource()=jMenuItem4)/創(chuàng)建工資添加的面板對象AddSalary AddSal=new AddSalary();this.remove(this.getC

21、ontentPane();/加載工資添加面板的對象到主框架this.setContentPane(AddSal);this.setVisible(true);/點擊“工資管理”菜單下的“修改工資”菜單項if(actionEvent.getSource()=jMenuItem5)/創(chuàng)建工資修改的面板對象ModifySalary ModifySal=new ModifySalary();this.remove(this.getContentPane();/加載工資修改面板的對象到主框架this.setContentPane(ModifySal);this.setVisible(true);/點擊“

22、工資管理”菜單下的“工資查詢”菜單項if(actionEvent.getSource()=jMenuItem8)/創(chuàng)建工資修改的面板對象SalaryInquire SalaryInq=new SalaryInquire();this.remove(this.getContentPane();/加載工資修改面板的對象到主框架this.setContentPane(SalaryInq);this.setVisible(true);/點擊“員工查詢”菜單下的“按工號查詢”菜單項if(actionEvent.getSource()=jMenuItem6)/創(chuàng)建“按工號查詢”面板對象InquireOnG

23、H OnGH=new InquireOnGH();/移除主框架上原有的內(nèi)容this.remove(this.getContentPane();this.setContentPane(OnGH);this.setVisible(true);4.43主函數(shù)Main代碼:/系統(tǒng)的主程序類Main/導(dǎo)入包import java.awt.*;import javax.swing.*;/創(chuàng)建主系統(tǒng)類class Mainpublic static void main (String args)/創(chuàng)建主界面,調(diào)用MainFrame()構(gòu)造函數(shù)和方法MainFrame frame=new MainFrame()

24、;/獲取屏幕尺寸Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();/獲取主界面的窗體尺寸Dimension frameSize =frame.getSize();/令主界面窗體居中if(frameSize.height>screenSize.height)frameSize.height=screenSize.height;if(frameSize.width>screenSize.width)frameSize.width=screenSize.width;frame.setLocation(scre

25、enSize.width-frameSize.width)/2,(screenSize.height-frameSize.height)/2);/令主界面顯示frame.setVisible(true);4.44員工信息查詢代碼 按工號查詢代碼/導(dǎo)入系統(tǒng)的類包import java.awt.*;im/"按員工號查詢"面板類InquireOnGHport java.sql.*;import javax.swing.*;import java.awt.event.*;/創(chuàng)建“按員工號查詢”類public class InquireOnGH extends JPanel impl

26、ements ActionListener/聲明連接數(shù)據(jù)庫對象Connection con;/聲明SQL語句對象Statement st;/創(chuàng)建組件對象:標(biāo)簽、文本行、單選JLabel jLabel1=new JLabel("請輸入員工號:");JTextField jTextField1=new JTextField();JButton jButton1=new JButton("查找");JTextArea jTextArea1=new JTextArea();/構(gòu)造方法public InquireOnGH()try/調(diào)用初始化方法jbInit();

27、catch(Exception exception)exception.printStackTrace();/面板初始化方法private void jbInit() throws Exception/連接數(shù)據(jù)庫con=DBConnect.getConn();st=con.createStatement();/框架的布局this.setLayout(null);/設(shè)置各組件的大小jLabel1.setFont(new java.awt.Font("黑體",Font.BOLD,16);jLabel1.setBounds(new Rectangle(46,4,222,32);j

28、TextField1.setBounds(new Rectangle(47,37,247,31);jButton1.setBounds(new Rectangle(47,86,247,30);jTextArea1.setBounds(new Rectangle(24,130,305,109);/添加按鈕動作事件jButton1.addActionListener(this);/添加組件到面板this.add(jLabel1);this.add(jTextField1);this.add(jTextArea1);this.add(jButton1);/點擊按鈕事件public void acti

29、onPerformed(ActionEvent e)/獲取輸入的員工號String EmployeeID=jTextField1.getText();/清空文本區(qū)原有的內(nèi)容jTextArea1.setText("");try/利用st對象執(zhí)行SQL語句,返回結(jié)果集對象ResultSet rs=st.executeQuery("select * from Employee where 員工號='"+EmployeeID+"'");/處理結(jié)果集if(rs.next()jTextArea1.setText("員工號

30、:"+rs.getString("員工號")+"n"+"員工姓名:"+rs.getString("員工姓名")+"n"+"員工性別:"+rs.getString("員工性別")+"n"+"員工年齡:"+rs.getString("員工年齡")+"n"+"部門名稱:"+rs.getString("部門名稱")+"n&qu

31、ot;+"員工職業(yè):"+rs.getString("員工職業(yè)")+"n");elseJOptionPane.showMessageDialog(this,"沒有這個員工號的員工!");catch(Exception ex)/利用消息對話框提示查詢失敗JOptionPane.showMessageDialog(this,"員工查詢失敗!"); 按姓名查詢 /"按員工姓名查詢"面板類InquireOnName/導(dǎo)入系統(tǒng)的類包import java.awt.*;import jav

32、a.sql.*;import javax.swing.*;import java.awt.event.*;/創(chuàng)建“按員工姓名查詢”類public class InquireOnName extends JPanel implements ActionListener/聲明連接數(shù)據(jù)庫對象Connection con;/聲明SQL語句對象Statement st;/創(chuàng)建組件對象:標(biāo)簽、文本行、單選JLabel jLabel1=new JLabel("請輸入員工姓名:");JTextField jTextField1=new JTextField();JButton jButto

33、n1=new JButton("查找");JTextArea jTextArea1=new JTextArea();/構(gòu)造方法public InquireOnName()try/調(diào)用初始化方法jbInit();catch(Exception exception)exception.printStackTrace();/面板初始化方法private void jbInit() throws Exception/連接數(shù)據(jù)庫con=DBConnect.getConn();st=con.createStatement();/框架的布局this.setLayout(null);/設(shè)置

34、各組件的大小jLabel1.setFont(new java.awt.Font("黑體",Font.BOLD,16);jLabel1.setBounds(new Rectangle(46,4,222,32);jTextField1.setBounds(new Rectangle(47,37,247,31);jButton1.setBounds(new Rectangle(47,86,247,30);jTextArea1.setBounds(new Rectangle(24,130,305,109);/添加按鈕動作事件jButton1.addActionListener(th

35、is);/添加組件到面板this.add(jLabel1);this.add(jTextField1);this.add(jTextArea1);this.add(jButton1);/點擊按鈕事件public void actionPerformed(ActionEvent e)/獲取輸入的員工的姓名String EmployeeName=jTextField1.getText();/清空文本區(qū)原有的內(nèi)容jTextArea1.setText("");try/利用st對象執(zhí)行SQL語句,返回結(jié)果集對象ResultSet rs=st.executeQuery("se

36、lect * from Employee where 員工姓名='"+EmployeeName+"'");/處理結(jié)果集if(rs.next()jTextArea1.setText("員工號:"+rs.getString("員工號")+"n"+"員工姓名:"+rs.getString("員工姓名")+"n"+"員工性別:"+rs.getString("員工性別")+"n"+

37、"員工年齡:"+rs.getString("員工年齡")+"n"+"部門名稱:"+rs.getString("部門名稱")+"n"+"員工職業(yè):"+rs.getString("員工職業(yè)")+"n");elseJOptionPane.showMessageDialog(this,"沒有這個員工號的員工!");catch(Exception ex)/利用消息對話框提示查詢失敗JOptionPane.s

38、howMessageDialog(this,"員工查詢失敗!"); 4.45員工工資查詢代碼/"工資查詢"面板類SalaryInquire/導(dǎo)入系統(tǒng)的類包import java.awt.*;import java.sql.*;import javax.swing.*;import java.awt.event.*;/創(chuàng)建“工資查詢”類public class SalaryInquire extends JPanel implements ActionListener/聲明連接數(shù)據(jù)庫對象Connection con;/聲明SQL語句對象Statement

39、st;/創(chuàng)建組件對象:標(biāo)簽、文本行、單選JLabel jLabel1=new JLabel("請輸入要查詢的員工號:");JTextField jTextField1=new JTextField();JButton jButton1=new JButton("工資查詢");JTextArea jTextArea1=new JTextArea();/構(gòu)造方法public SalaryInquire()try/調(diào)用初始化方法jbInit();catch(Exception exception)exception.printStackTrace();/面板初

40、始化方法private void jbInit() throws Exception/連接數(shù)據(jù)庫con=DBConnect.getConn();st=con.createStatement();/框架的布局this.setLayout(null);/設(shè)置各組件的大小jLabel1.setFont(new java.awt.Font("黑體",Font.BOLD,16);jLabel1.setBounds(new Rectangle(46,4,222,32);jTextField1.setBounds(new Rectangle(47,37,247,31);jButton1.

41、setBounds(new Rectangle(47,86,247,30);jTextArea1.setBounds(new Rectangle(24,130,305,109);/添加按鈕動作事件jButton1.addActionListener(this);/添加組件到面板this.add(jLabel1);this.add(jTextField1);this.add(jTextArea1);this.add(jButton1);/點擊按鈕事件public void actionPerformed(ActionEvent e)/獲取輸入的員工號String EmployeeID=jText

42、Field1.getText();/清空文本區(qū)原有的內(nèi)容jTextArea1.setText("");try/利用st對象執(zhí)行SQL語句,返回結(jié)果集對象ResultSet rs=st.executeQuery("select * from Salary where 員工號='"+EmployeeID+"'");/處理結(jié)果集if(rs.next()jTextArea1.setText("員工號:"+rs.getString("員工號")+"n"+"員工

43、工資:"+rs.getString("員工工資")+"n");elseJOptionPane.showMessageDialog(this,"該員工號的員工沒有工資記錄!");catch(Exception ex)/利用消息對話框提示查詢失敗JOptionPane.showMessageDialog(this,"工資查詢失敗!");4.46修改工資代碼/“修改工資”面板類ModifySalary/導(dǎo)入系統(tǒng)的類包import java.awt.*;import java.sql.*;import javax

44、.swing.*;import java.awt.event.*;/創(chuàng)建“修改工資”面板類public class ModifySalary extends JPanel implements ActionListener/聲明連接數(shù)據(jù)庫對象Connection con;/聲明SQL語句對象Statement st;/創(chuàng)建組件對象:標(biāo)簽、文本行、單選JLabel jLabel1=new JLabel("請輸入員工號:");JTextField jTextField1=new JTextField();JButton jButton1=new JButton("查找

45、該員工");JLabel jLabel2=new JLabel("員工號:");JTextField jTextField2=new JTextField();JLabel jLabel3=new JLabel("員工工資:");JTextField jTextField3=new JTextField();JButton jButton2=new JButton("修改工資");/構(gòu)造方法public ModifySalary()try/調(diào)用初始化方法jbInit();catch(Exception exception)e

46、xception.printStackTrace();/面板初始化方法private void jbInit() throws Exception/連接數(shù)據(jù)庫con=DBConnect.getConn();st=con.createStatement();/框架的布局this.setLayout(null);/設(shè)置各組件的大小jLabel1.setFont(new java.awt.Font("楷體",Font.BOLD,14);jLabel1.setBounds(new Rectangle(40,25,140,30);jTextField1.setBounds(new R

47、ectangle(185,25,120,30);jButton1.setBounds(new Rectangle(110,65,120,30);jLabel2.setFont(new java.awt.Font("楷體",Font.BOLD,14);jLabel2.setBounds(new Rectangle(90,125,80,30);jTextField2.setBounds(new Rectangle(170,125,80,30);jLabel3.setFont(new java.awt.Font("楷體",Font.BOLD,14);jLabe

48、l3.setBounds(new Rectangle(90,160,80,30);jTextField3.setBounds(new Rectangle(170,160,80,30);jButton2.setBounds(new Rectangle(120,200,100,30);/添加按鈕動作事件jButton1.addActionListener(this);jButton2.addActionListener(this);/添加組件到面板this.add(jLabel1);this.add(jTextField1);this.add(jButton1);this.add(jLabel2)

49、;this.add(jTextField2);jTextField2.setEditable(false);this.add(jLabel3);this.add(jTextField3);this.add(jButton2);/點擊按鈕事件public void actionPerformed(ActionEvent actionevent)/點擊“查找該員工”按鈕if(actionevent.getSource()=jButton1)/獲取輸入的員工號String EmployeeID=jTextField1.getText();try/利用st對象執(zhí)行SQL語句,返回結(jié)果集對象Result

50、Set rs=st.executeQuery("select * from Salary where 員工號='"+EmployeeID+"'");/處理結(jié)果集if(rs.next()jTextField2.setText(rs.getString("員工號");jTextField3.setText(rs.getString("員工工資");elseJOptionPane.showMessageDialog(this,"沒有這個員工號的員工!");catch(Exception

51、 ex)/利用消息對話框提示查詢失敗JOptionPane.showMessageDialog(this,"工資修改失敗!");/點擊“修改工資”按鈕if(actionevent.getSource()=jButton2)/獲取用戶更改的工資try/利用st對象執(zhí)行SQL語句,進(jìn)行修改操作st.executeUpdate("update Salary set 員工工資='"+jTextField3.getText()+"' where 員工號='"+jTextField2.getText()+"'");/利用消息對話框提示工資修改成功JOptionPane.showMessageDialog(this,"工資修改成功!");catch(Exception ex)/利用消息對話框提示異常的信息JOptionPane.showMessageDialog(this,"工資修改失敗!");ex.printStackTrace();4.47員工添加代碼/添加員工面板類AddEmployee/導(dǎo)入系統(tǒng)的類包import java.awt.*;import java.sql.*

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論