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

下載本文檔

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

文檔簡(jiǎn)介

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

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

3、的實(shí)際發(fā)放工資。按科室、職業(yè)分類統(tǒng)計(jì)人數(shù)和工資金額。實(shí)現(xiàn)分類查詢。能夠刪除辭職人員的數(shù)據(jù)。開發(fā)工具不限。1.3開發(fā)背景當(dāng)今社會(huì),隨著企業(yè)人數(shù)的不斷增加,企業(yè)員工薪資的管理工作也越來越復(fù)雜,資金是企業(yè)生存的核心部分,而資金流動(dòng)也是關(guān)鍵環(huán)節(jié),隨著計(jì)算機(jī)的普與,計(jì)算機(jī)管理系統(tǒng)已經(jīng)原來越來越廣泛的應(yīng)用于各個(gè)中小型企業(yè)中,用計(jì)算機(jī)取代手工對(duì)企業(yè)管理的操作也是勢(shì)在必行的,并且人為操作容易造成信息錯(cuò)誤,紙質(zhì)材料不易保存,可能會(huì)導(dǎo)致企業(yè)運(yùn)轉(zhuǎn)出現(xiàn)滯緩現(xiàn)象,影響企業(yè)發(fā)展。為了更好的、更方便地管理企業(yè)中各個(gè)成員的工資發(fā)放情況,我們必須要有一個(gè)完善的、合理的、便捷的員工薪資管理系統(tǒng)來管理公司員工工資的發(fā)放情況。該員工

4、薪資管理系統(tǒng)主要用于中小型企業(yè)員工的工資發(fā)放管理,此系統(tǒng)的建立和使用有利于員工更好的了解自己的薪資信息,提高公司員工薪資發(fā)放工作的效率,大大減少紙質(zhì)管理對(duì)工作帶來的失誤。1.4開發(fā)環(huán)境開發(fā)平臺(tái):SQL Server2005開發(fā)工具:Eclipse JDBC開發(fā)語言:SQL語言 JAVA語言1.5組成員與分工雪敏:系統(tǒng)框架撰寫報(bào)告顏學(xué)宏:代碼編寫數(shù)據(jù)庫的連接與運(yùn)行余黎晨:概念結(jié)構(gòu)設(shè)計(jì)代碼調(diào)試敬翰林:邏輯結(jié)構(gòu)設(shè)計(jì)需求分析二:需求分析2.1題目分析該題目要求設(shè)計(jì)一個(gè)員工薪資系統(tǒng),實(shí)現(xiàn)員工信息的有序化,規(guī)化,并能進(jìn)行員工信息錄入,查詢,修改,刪除等操作,能實(shí)現(xiàn)分類查詢,2.2功能分析該員工薪資系統(tǒng)能夠

5、實(shí)現(xiàn)的功能如下:?jiǎn)T工信息的管理,包括,性別,年齡,職業(yè),員工號(hào),部門編號(hào)基本信息的錄入,查詢,刪除,修改等操作部門信息的管理,包括部門編號(hào)和部門名稱,查詢每個(gè)部門的業(yè)績(jī)和員工薪資情況薪資信息的管理,包括員工號(hào),部門編號(hào),基本工資,福利補(bǔ)貼,獎(jiǎng)勵(lì)工資,失業(yè)保險(xiǎn),住房公積金,實(shí)發(fā)薪資等信息,統(tǒng)計(jì)出員工的基本工資,福利補(bǔ)貼,獎(jiǎng)勵(lì)工資,扣除失業(yè)保險(xiǎn),住房公積金后所得的工2.3數(shù)據(jù)流圖注冊(cè)員工員工基本信息查詢員工員工工資記錄員工薪資信息形成查詢部門經(jīng)理薪資信息管理部門工資記錄統(tǒng)計(jì)分析財(cái)務(wù)統(tǒng)計(jì)人員2.4數(shù)據(jù)字典數(shù)據(jù)字典在數(shù)據(jù)庫設(shè)計(jì)中占有很重要的地位,數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)

6、據(jù)分析后所獲得的主要成果。根據(jù)數(shù)據(jù)流圖對(duì)員工薪資管理數(shù)據(jù)庫數(shù)據(jù)字典的設(shè)計(jì)如下所示:2.41數(shù)據(jù)結(jié)構(gòu)名:?jiǎn)T工含義說明:?jiǎn)T工信息組成:,性別,年齡,職業(yè),員工號(hào)數(shù)據(jù)項(xiàng)名數(shù)據(jù)類型長(zhǎng)度可否為空含義說明員工號(hào)char10no員工編號(hào)員工char10 no員工年齡char 10 no年齡部門名稱char 10 no所屬部門員工職業(yè)char 10 no擔(dān)任職務(wù)2.42數(shù)據(jù)結(jié)構(gòu)名:部門含義說明:部門信息組成:部門編號(hào),部門名稱數(shù)據(jù)項(xiàng)名數(shù)據(jù)類型長(zhǎng)度可否為空含義說明部門編號(hào)char4no科室類別部門名稱char10no科室名稱2.43數(shù)據(jù)結(jié)構(gòu)名:工資含義說明:?jiǎn)T工薪資信息組成:?jiǎn)T工號(hào),部門編號(hào),基本工資,福利補(bǔ)貼

7、,獎(jiǎng)勵(lì)工資,扣罰工資,失業(yè)保險(xiǎn),住房公積金,實(shí)發(fā)薪資數(shù)據(jù)項(xiàng)名數(shù)據(jù)類型長(zhǎng)度可否為空含義說明員工號(hào)char8no員工編號(hào)員工工資char4no所的工資獎(jiǎng)勵(lì)工資money8no基本工資員工薪資money8yes福利和補(bǔ)貼工資 2.5系統(tǒng)功能該員工薪資系統(tǒng)的功能如下:三:系統(tǒng)分析與設(shè)計(jì)3.1概念結(jié)構(gòu)設(shè)計(jì) ER圖設(shè)計(jì)員工實(shí)體關(guān)系圖性別XX職業(yè)員工員工號(hào)年齡部門編號(hào)部門實(shí)體關(guān)系圖部門編號(hào)部門部門名稱工資實(shí)體關(guān)系圖員工號(hào)實(shí)發(fā)薪資住房公積金福利補(bǔ)貼基本工資部門編號(hào)工資獎(jiǎng)勵(lì)工資失業(yè)保險(xiǎn)總的ER圖3.2概念結(jié)構(gòu)設(shè)計(jì) E-R圖表示的概念模型是用戶數(shù)據(jù)要求的形式化,它不為任何一個(gè)DBMS所支持,而邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)就

8、是把概念模型結(jié)構(gòu)轉(zhuǎn)換成某個(gè)具體的DBMS所支持的數(shù)據(jù)模型,員工薪資管理E-R圖轉(zhuǎn)換為關(guān)系模式為:?jiǎn)T工(,性別,年齡,職業(yè),員工號(hào),部門編號(hào))部門(部門編號(hào),部門名稱)薪資(員工號(hào),員工工資,福利補(bǔ)貼,獎(jiǎng)勵(lì)工資,失業(yè)保險(xiǎn),住房公積金,實(shí)發(fā)薪資)四:數(shù)據(jù)庫實(shí)施與運(yùn)行4.1建基本表員工信息表部門信息表工資信息表4.3功能實(shí)現(xiàn) 4.31系統(tǒng)界面展示:4.32員工信息查詢功能按工號(hào)查詢:按查詢:4.33員工工資查詢功能:4.34修改員工工資功能:4.35添加員工功能: 4.36修改員工信息功能:4.37刪除員工信息功能:4.4完整代碼展示 4.41源程序代碼/類DBConnect用于數(shù)據(jù)庫的連接/導(dǎo)入s

9、ql包import java.sql.*;/創(chuàng)建數(shù)據(jù)庫連接類DBConnectpublic class DBConnect/靜態(tài)方法提高數(shù)據(jù)庫的連接效率public static Connection getConn() throws Exception/加載JDBC驅(qū)動(dòng)Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);/以系統(tǒng)默認(rèn)用戶身份,連接數(shù)據(jù)庫StudentManagerreturn DriverManager.getConnection(jdbc:odbc:Test,dmj,753);4.42主框架代碼:/系統(tǒng)主框架類/導(dǎo)入系統(tǒng)的包import

10、java.awt.*;import java.awt.event.*;import javax.swing.*;/創(chuàng)建主框架類MainFramepublic class MainFrame extends JFrame implements ActionListener/創(chuàng)建容面板JPanel contentPane;/創(chuàng)建菜單欄組件的對(duì)象JMenuBar jMenuBar1=new JMenuBar();/菜單條JMenu jMenu0=new JMenu(退出系統(tǒng));/菜單JMenuItem jMenuItem0=new JMenuItem(退出);/子菜單JMenu jMenu1=new

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

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

13、ion exception)exception.printStackTrace();/界面初始化方法private void Init() throws Exception/創(chuàng)建容面板contentPane =(JPanel) getContentPane();/設(shè)置容面板的布局為空contentPane.setLayout(null);/主框架的大小setSize(new Dimension(400,360);/主框架的標(biāo)題setTitle( 員工薪資管理系統(tǒng));/添加事件監(jiān)聽器jMenuItem0.addActionListener(this);jMenuItem1.addActionLi

14、stener(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);/添加菜單條到

15、主框架setJMenuBar(jMenuBar1);/添加菜單到菜單條jMenuBar1.add(jMenu0);jMenuBar1.add(jMenu1);jMenuBar1.add(jMenu2);jMenuBar1.add(jMenu3);/添加菜單項(xiàng)到菜單jMenu0.add(jMenuItem0);jMenu1.add(jMenuItem1);jMenu1.add(jMenuItem2);jMenu1.add(jMenuItem3);jMenu2.add(jMenuItem4);jMenu2.add(jMenuItem5);jMenu2.add(jMenuItem8);jMenu3.

16、add(jMenuItem6);jMenu3.add(jMenuItem7);/添加標(biāo)簽到主框架容面板contentPane.add(jLabel1);/設(shè)置標(biāo)簽組件的大小和字體jLabel1.setFont(new java.awt.Font(黑體,Font.BOLD,20);jLabel1.setBounds(new Rectangle(65,70,275,55);/菜單項(xiàng)事件對(duì)應(yīng)的處理方法public void actionPerformed(ActionEvent actionEvent)/點(diǎn)擊“系統(tǒng)”菜單下的“退出”菜單項(xiàng)if(actionEvent.getSource()=jMen

17、uItem0)System.exit(0);/點(diǎn)擊“員工管理”菜單下的“添加員工”菜單項(xiàng)if(actionEvent.getSource()=jMenuItem1)/創(chuàng)建“添加員工”面板對(duì)象AddEmployee AddEmp=new AddEmployee();/移除主框架上原有的容this.remove(this.getContentPane();/加載“添加職工”面板的對(duì)象到主框架this.setContentPane(AddEmp);/令界面可見this.setVisible(true);/點(diǎn)擊“員工管理”菜單下的“修改員工”菜單項(xiàng)if(actionEvent.getSource()=

18、jMenuItem2)/創(chuàng)建“修改員工”面板對(duì)象ModifyEmployee ModifyEmp=new ModifyEmployee();this.remove(this.getContentPane();/加載“修改員工”面板的對(duì)象到主框架this.setContentPane(ModifyEmp);this.setVisible(true);/點(diǎn)擊“員工管理”菜單下的“刪除員工”菜單項(xiàng)if(actionEvent.getSource()=jMenuItem3)/創(chuàng)建“刪除員工”面板對(duì)象DeleteEmployee DeleteEmp=new DeleteEmployee();this.r

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

20、ue);/點(diǎn)擊“工資管理”菜單下的“修改工資”菜單項(xiàng)if(actionEvent.getSource()=jMenuItem5)/創(chuàng)建工資修改的面板對(duì)象ModifySalary ModifySal=new ModifySalary();this.remove(this.getContentPane();/加載工資修改面板的對(duì)象到主框架this.setContentPane(ModifySal);this.setVisible(true);/點(diǎn)擊“工資管理”菜單下的“工資查詢”菜單項(xiàng)if(actionEvent.getSource()=jMenuItem8)/創(chuàng)建工資修改的面板對(duì)象SalaryI

21、nquire SalaryInq=new SalaryInquire();this.remove(this.getContentPane();/加載工資修改面板的對(duì)象到主框架this.setContentPane(SalaryInq);this.setVisible(true);/點(diǎn)擊“員工查詢”菜單下的“按工號(hào)查詢”菜單項(xiàng)if(actionEvent.getSource()=jMenuItem6)/創(chuàng)建“按工號(hào)查詢”面板對(duì)象InquireOnGH OnGH=new InquireOnGH();/移除主框架上原有的容this.remove(this.getContentPane();this.

22、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();/獲取屏幕尺寸Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();/獲取

23、主界面的窗體尺寸Dimension frameSize =frame.getSize();/令主界面窗體居中if(frameSize.heightscreenSize.height)frameSize.height=screenSize.height;if(frameSize.widthscreenSize.width)frameSize.width=screenSize.width;frame.setLocation(screenSize.width-frameSize.width)/2,(screenSize.height-frameSize.height)/2);/令主界面顯示frame

24、.setVisible(true);4.44員工信息查詢代碼按工號(hào)查詢代碼/導(dǎo)入系統(tǒng)的類包import java.awt.*;im/按員工號(hào)查詢面板類InquireOnGHport java.sql.*;import javax.swing.*;import java.awt.event.*;/創(chuàng)建“按員工號(hào)查詢”類public class InquireOnGH extends JPanel implements ActionListener/聲明連接數(shù)據(jù)庫對(duì)象Connection con;/聲明SQL語句對(duì)象Statement st;/創(chuàng)建組件對(duì)象:標(biāo)簽、文本行、單選JLabel jLab

25、el1=new JLabel(請(qǐng)輸入員工號(hào):);JTextField jTextField1=new JTextField();utton utton1=new utton(查找);JTextArea jTextArea1=new JTextArea();/構(gòu)造方法public InquireOnGH()try/調(diào)用初始化方法Init();catch(Exception exception)exception.printStackTrace();/面板初始化方法private void Init() throws Exception/連接數(shù)據(jù)庫con=DBConnect.getConn();s

26、t=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);utton1.setBounds(new Rectangle(47,86,247,30);jTextArea1.setBounds(new Rectangle(24,130,305,109

27、);/添加按鈕動(dòng)作事件utton1.addActionListener(this);/添加組件到面板this.add(jLabel1);this.add(jTextField1);this.add(jTextArea1);this.add(utton1);/點(diǎn)擊按鈕事件public void actionPerformed(ActionEvent e)/獲取輸入的員工號(hào)String EmployeeID=jTextField1.getText();/清空文本區(qū)原有的容jTextArea1.setText();try/利用st對(duì)象執(zhí)行SQL語句,返回結(jié)果集對(duì)象ResultSet rs=st.ex

28、ecuteQuery(select * from Employee where 員工號(hào)=+EmployeeID+);/處理結(jié)果集if(rs.next()jTextArea1.setText(員工號(hào):+rs.getString(員工號(hào))+n+員工:+rs.getString(員工)+n+員工性別:+rs.getString(員工性別)+n+員工年齡:+rs.getString(員工年齡)+n+部門名稱:+rs.getString(部門名稱)+n+員工職業(yè):+rs.getString(員工職業(yè))+n);elseJOptionPane.showMessageDialog(this,沒有這個(gè)員工號(hào)的員

29、工!);catch(Exception ex)/利用消息對(duì)話框提示查詢失敗JOptionPane.showMessageDialog(this,員工查詢失敗!);按查詢/按員工查詢面板類InquireOnName/導(dǎo)入系統(tǒng)的類包import java.awt.*;import java.sql.*;import javax.swing.*;import java.awt.event.*;/創(chuàng)建“按員工查詢”類public class InquireOnName extends JPanel implements ActionListener/聲明連接數(shù)據(jù)庫對(duì)象Connection con;/聲

30、明SQL語句對(duì)象Statement st;/創(chuàng)建組件對(duì)象:標(biāo)簽、文本行、單選JLabel jLabel1=new JLabel(請(qǐng)輸入員工:);JTextField jTextField1=new JTextField();utton utton1=new utton(查找);JTextArea jTextArea1=new JTextArea();/構(gòu)造方法public InquireOnName()try/調(diào)用初始化方法Init();catch(Exception exception)exception.printStackTrace();/面板初始化方法private void Init

31、() 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);utton1.setBounds(new Rectangle(47,86,247,30)

32、;jTextArea1.setBounds(new Rectangle(24,130,305,109);/添加按鈕動(dòng)作事件utton1.addActionListener(this);/添加組件到面板this.add(jLabel1);this.add(jTextField1);this.add(jTextArea1);this.add(utton1);/點(diǎn)擊按鈕事件public void actionPerformed(ActionEvent e)/獲取輸入的員工的String EmployeeName=jTextField1.getText();/清空文本區(qū)原有的容jTextArea1.s

33、etText();try/利用st對(duì)象執(zhí)行SQL語句,返回結(jié)果集對(duì)象ResultSet rs=st.executeQuery(select * from Employee where 員工=+EmployeeName+);/處理結(jié)果集if(rs.next()jTextArea1.setText(員工號(hào):+rs.getString(員工號(hào))+n+員工:+rs.getString(員工)+n+員工性別:+rs.getString(員工性別)+n+員工年齡:+rs.getString(員工年齡)+n+部門名稱:+rs.getString(部門名稱)+n+員工職業(yè):+rs.getString(員工職業(yè)

34、)+n);elseJOptionPane.showMessageDialog(this,沒有這個(gè)員工號(hào)的員工!);catch(Exception ex)/利用消息對(duì)話框提示查詢失敗JOptionPane.showMessageDialog(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

35、 JPanel implements ActionListener/聲明連接數(shù)據(jù)庫對(duì)象Connection con;/聲明SQL語句對(duì)象Statement st;/創(chuàng)建組件對(duì)象:標(biāo)簽、文本行、單選JLabel jLabel1=new JLabel(請(qǐng)輸入要查詢的員工號(hào):);JTextField jTextField1=new JTextField();utton utton1=new utton(工資查詢);JTextArea jTextArea1=new JTextArea();/構(gòu)造方法public SalaryInquire()try/調(diào)用初始化方法Init();catch(Except

36、ion exception)exception.printStackTrace();/面板初始化方法private void Init() 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 R

37、ectangle(47,37,247,31);utton1.setBounds(new Rectangle(47,86,247,30);jTextArea1.setBounds(new Rectangle(24,130,305,109);/添加按鈕動(dòng)作事件utton1.addActionListener(this);/添加組件到面板this.add(jLabel1);this.add(jTextField1);this.add(jTextArea1);this.add(utton1);/點(diǎn)擊按鈕事件public void actionPerformed(ActionEvent e)/獲取輸入的

38、員工號(hào)String EmployeeID=jTextField1.getText();/清空文本區(qū)原有的容jTextArea1.setText();try/利用st對(duì)象執(zhí)行SQL語句,返回結(jié)果集對(duì)象ResultSet rs=st.executeQuery(select * from Salary where 員工號(hào)=+EmployeeID+);/處理結(jié)果集if(rs.next()jTextArea1.setText(員工號(hào):+rs.getString(員工號(hào))+n+員工工資:+rs.getString(員工工資)+n);elseJOptionPane.showMessageDialog(thi

39、s,該員工號(hào)的員工沒有工資記錄!);catch(Exception ex)/利用消息對(duì)話框提示查詢失敗JOptionPane.showMessageDialog(this,工資查詢失敗!);4.46修改工資代碼/“修改工資”面板類ModifySalary/導(dǎo)入系統(tǒng)的類包import java.awt.*;import java.sql.*;import javax.swing.*;import java.awt.event.*;/創(chuàng)建“修改工資”面板類public class ModifySalary extends JPanel implements ActionListener/聲明連接數(shù)

40、據(jù)庫對(duì)象Connection con;/聲明SQL語句對(duì)象Statement st;/創(chuàng)建組件對(duì)象:標(biāo)簽、文本行、單選JLabel jLabel1=new JLabel(請(qǐng)輸入員工號(hào):);JTextField jTextField1=new JTextField();utton utton1=new utton(查找該員工);JLabel jLabel2=new JLabel(員工號(hào):);JTextField jTextField2=new JTextField();JLabel jLabel3=new JLabel(員工工資:);JTextField jTextField3=new JTex

41、tField();utton utton2=new utton(修改工資);/構(gòu)造方法public ModifySalary()try/調(diào)用初始化方法Init();catch(Exception exception)exception.printStackTrace();/面板初始化方法private void Init() throws Exception/連接數(shù)據(jù)庫con=DBConnect.getConn();st=con.createStatement();/框架的布局this.setLayout(null);/設(shè)置各組件的大小jLabel1.setFont(new java.awt.

42、Font(楷體,Font.BOLD,14);jLabel1.setBounds(new Rectangle(40,25,140,30);jTextField1.setBounds(new Rectangle(185,25,120,30);utton1.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(17

43、0,125,80,30);jLabel3.setFont(new java.awt.Font(楷體,Font.BOLD,14);jLabel3.setBounds(new Rectangle(90,160,80,30);jTextField3.setBounds(new Rectangle(170,160,80,30);utton2.setBounds(new Rectangle(120,200,100,30);/添加按鈕動(dòng)作事件utton1.addActionListener(this);utton2.addActionListener(this);/添加組件到面板this.add(jLab

44、el1);this.add(jTextField1);this.add(utton1);this.add(jLabel2);this.add(jTextField2);jTextField2.setEditable(false);this.add(jLabel3);this.add(jTextField3);this.add(utton2);/點(diǎn)擊按鈕事件public void actionPerformed(ActionEvent actionevent)/點(diǎn)擊“查找該員工”按鈕if(actionevent.getSource()=utton1)/獲取輸入的員工號(hào)String Employe

45、eID=jTextField1.getText();try/利用st對(duì)象執(zhí)行SQL語句,返回結(jié)果集對(duì)象ResultSet rs=st.executeQuery(select * from Salary where 員工號(hào)=+EmployeeID+);/處理結(jié)果集if(rs.next()jTextField2.setText(rs.getString(員工號(hào));jTextField3.setText(rs.getString(員工工資);elseJOptionPane.showMessageDialog(this,沒有這個(gè)員工號(hào)的員工!);catch(Exception ex)/利用消息對(duì)話框提

46、示查詢失敗JOptionPane.showMessageDialog(this,工資修改失敗!);/點(diǎn)擊“修改工資”按鈕if(actionevent.getSource()=utton2)/獲取用戶更改的工資try/利用st對(duì)象執(zhí)行SQL語句,進(jìn)行修改操作st.executeUpdate(update Salary set 員工工資=+jTextField3.getText()+ where 員工號(hào)=+jTextField2.getText()+);/利用消息對(duì)話框提示工資修改成功JOptionPane.showMessageDialog(this,工資修改成功!);catch(Excepti

47、on ex)/利用消息對(duì)話框提示異常的信息JOptionPane.showMessageDialog(this,工資修改失敗!);ex.printStackTrace();4.47員工添加代碼/添加員工面板類AddEmployee/導(dǎo)入系統(tǒng)的類包import java.awt.*;import java.sql.*;import javax.swing.*;import java.awt.event.*;/創(chuàng)建“添加員工“面板類public class AddEmployee extends JPanel implements ActionListener/聲明連接數(shù)據(jù)庫對(duì)象Connectio

48、n con;/聲明SQL語句對(duì)象Statement st;/創(chuàng)建組件對(duì)象:標(biāo)簽、文本行、單選JLabel jLabel1=new JLabel(員工號(hào));JLabel jLabel2=new JLabel(員工);JLabel jLabel3=new JLabel(員工性別);JLabel jLabel4=new JLabel(員工年齡);JLabel jLabel5=new JLabel(部門名稱);JLabel jLabel6=new JLabel(員工職業(yè));JTextField jTextField1=new JTextField();JTextField jTextField2=ne

49、w JTextField();JTextField jTextField3=new JTextField();JTextField jTextField4=new JTextField();JTextField jTextField5=new JTextField();JRadioButton jRadioButton1=new JRadioButton(男);JRadioButton jRadioButton2=new JRadioButton(女);ButtonGroup buttonGroup1=new ButtonGroup();utton utton1=new utton(添加員工)

50、;/構(gòu)造方法public AddEmployee()try/調(diào)用初始化方法Init();catch(Exception exception)exception.printStackTrace();/界面初始化方法private void Init() throws Exception/連接數(shù)據(jù)庫con=DBConnect.getConn();st=con.createStatement();/框架的布局this.setLayout(null);/設(shè)置各組件的大小jLabel1.setBounds(new Rectangle(21,17,64,24);jLabel2.setBounds(new

51、Rectangle(21,51,53,22);jLabel3.setBounds(new Rectangle(21,86,61,27);jLabel4.setBounds(new Rectangle(21,122,59,25);jLabel5.setBounds(new Rectangle(21,168,54,24);jLabel6.setBounds(new Rectangle(21,205,54,24);jTextField1.setBounds(new Rectangle(102,10,200,30);jTextField2.setBounds(new Rectangle(102,49,

52、200,30);jTextField3.setBounds(new Rectangle(102,117,80,33);jTextField4.setBounds(new Rectangle(102,163,200,29);jTextField5.setBounds(new Rectangle(102,200,200,29);jRadioButton1.setBounds(new Rectangle(102,83,65,30);jRadioButton2.setBounds(new Rectangle(190,85,85,30);utton1.setBounds(new Rectangle(13

53、0,240,150,32);/設(shè)置單選按鈕被選中jRadioButton1.setSelected(true);/添加按鈕動(dòng)作事件utton1.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(j

54、RadioButton2);this.add(jLabel4);this.add(jTextField3);this.add(jLabel5);this.add(jTextField4);this.add(jLabel6);this.add(jTextField5);this.add(utton1);/點(diǎn)擊按鈕事件public void actionPerformed(ActionEvent e)/獲取用戶輸入的信息String EmployeeID=jTextField1.getText();String EmployeeName=jTextField2.getText();String E

55、mployeeSex=;if(jRadioButton1.isSelected()EmployeeSex+=男;if(jRadioButton2.isSelected()EmployeeSex+=女;String EmployeeAge=jTextField3.getText();String EmployeeAddress=jTextField4.getText();String EmployeePhone=jTextField5.getText();try/設(shè)置日期格式st.execute(set dateformat ymd);/利用st對(duì)象執(zhí)行SQL語句,進(jìn)行插入操作st.execut

56、eUpdate(insert into Employee values(+EmployeeID+,+EmployeeName+,+EmployeeSex+,+EmployeeAge+,+EmployeeAddress+,+EmployeePhone+);/利用消息對(duì)話框提示員工添加成功JOptionPane.showMessageDialog(this, 員工添加成功!);/清空文本行的容jTextField1.setText();jTextField2.setText();jTextField3.setText();jTextField4.setText();jTextField5.setT

57、ext();catch(Exception ex)/利用消息對(duì)話框提示異常的信息JOptionPane.showMessageDialog(this, 員工添加失敗!);ex.printStackTrace();4.48修改員工信息代碼/“員工信息修改”面板類ModifyEmployee/導(dǎo)入系統(tǒng)的類包import java.awt.*;import java.sql.*;import javax.swing.*;import java.awt.event.*;/創(chuàng)建“員工信息修改資”類public class ModifyEmployee extends JPanel implements

58、ActionListener/聲明連接數(shù)據(jù)庫對(duì)象Connection con;/聲明SQL語句對(duì)象Statement st;/創(chuàng)建組件對(duì)象:標(biāo)簽、文本行、單選JLabel jLabel1=new JLabel(請(qǐng)輸入員工號(hào):);JTextField jTextField1=new JTextField();utton utton1=new utton(查找該員工);JLabel jLabel2=new JLabel(員工號(hào):);JTextField jTextField2=new JTextField();JLabel jLabel3=new JLabel(員工:);JTextField jT

59、extField3=new JTextField();JLabel jLabel4=new JLabel(員工性別:);JTextField jTextField4=new JTextField();JLabel jLabel5=new JLabel(員工年齡:);JTextField jTextField5=new JTextField();JLabel jLabel6=new JLabel(部門名稱:);JTextField jTextField6=new JTextField();JLabel jLabel7=new JLabel(員工職業(yè):);JTextField jTextField

60、7=new JTextField();utton utton2=new utton(修改員工信息);/構(gòu)造方法public ModifyEmployee()try/調(diào)用初始化方法Init();catch(Exception exception)exception.printStackTrace();/面板初始化方法private void Init() throws Exception/連接數(shù)據(jù)庫con=DBConnect.getConn();st=con.createStatement();/框架的布局this.setLayout(null);/設(shè)置各組件的大小jLabel1.setFont

溫馨提示

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

評(píng)論

0/150

提交評(píng)論