歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

JAVA課程設(shè)計(jì)職工工資管理系統(tǒng)

  • 資源ID:28089506       資源大?。?span id="qvviffe" class="font-tahoma">358.80KB        全文頁數(shù):21頁
  • 資源格式: DOC        下載積分:15積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要15積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號,方便查詢和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號:
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

JAVA課程設(shè)計(jì)職工工資管理系統(tǒng)

Java面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)課程設(shè)計(jì)(論文)任務(wù)書學(xué) 院理 學(xué) 院專 業(yè)信息與計(jì)算科學(xué)學(xué)生姓名丁玲玲班級學(xué)號 1109010206課程名稱Java面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)課 程 設(shè) 計(jì)(論文)題目職工工資管理系統(tǒng)內(nèi)容及要求:1、 要求:(1)使用Java語言及Eclipse開發(fā)工具設(shè)計(jì)并實(shí)現(xiàn)職工工資管理系統(tǒng)。 (2)完成添加、刪除、查詢、修改等功能。 (3)使用界面完成顯示。2、 開發(fā)環(huán)境: Windows XP ,Java + Eclipse計(jì)劃與進(jìn)度安排:第12周 星期四:任務(wù)分析與總體設(shè)計(jì) 星期五:軟件算法與流程設(shè)計(jì)第13周 星期一,星期二,星期三:軟件編碼實(shí)現(xiàn) 星期四:軟件總體調(diào)試 星期五:軟件運(yùn)行分析 第14周星期二:答辯、驗(yàn)收程序星期四:答辯、驗(yàn)收程序成績:指導(dǎo)教師(簽字):2012年 月 日專業(yè)負(fù)責(zé)人(簽字):年 月 日主管院長(簽字) 年 月 日摘 要Java語言雖然發(fā)展歷史比較短,但卻是比較優(yōu)秀的面向?qū)ο缶幊陶Z言,在具有強(qiáng)大功能的同時(shí),又具有突出的簡單性、可移植性、安全性以及支持并發(fā)程序等優(yōu)良特性。工資管理系統(tǒng)適合于中、小型企業(yè)公司職工工資信息管理,錄入功能具有多重提示,已錄入職工工資信息提示,工資信息有誤提示;若文件中沒有所查職工的工資信息,當(dāng)修改與刪除此職工信息時(shí)可以提示沒有此職工的工資信息,等等。這個(gè)程序應(yīng)用了基于Swing的圖形化用戶界面 ,利用了容器、組件以及布局管理器構(gòu)建用戶界面,實(shí)現(xiàn)了用戶在GUI操作的響應(yīng)。關(guān)鍵詞:Java語言;工資管理系統(tǒng);Swing圖形化用戶界面;GUI 目 錄 摘 要2一 、設(shè)計(jì)目的及內(nèi)容要求41.1 設(shè)計(jì)目的:31.2 內(nèi)容要求:3二 、系統(tǒng)總體設(shè)計(jì)5三 、系統(tǒng)詳細(xì)設(shè)計(jì)(程序源代碼)63.1 構(gòu)造wage函數(shù):63.2 用戶登陸界面及主函數(shù):63.3 工資管理的添加、刪除、修改、查找、退出功能的實(shí)現(xiàn):8四 、運(yùn)行結(jié)果及分析13 4.1登錄窗口144.2初始化界面154.3 添加窗口164.4刪除窗口174.5查詢窗口174.6修改窗口19五、課程總結(jié)19六、致謝20七、參考文獻(xiàn)20一、 設(shè)計(jì)目的及內(nèi)容要求1.1 設(shè)計(jì)目的:通過這次的設(shè)計(jì),主要是做出一個(gè)小型的員工工資管理系統(tǒng),來加強(qiáng)對JAVA所學(xué)知識的鞏固和融會貫通,也對一個(gè)學(xué)期所學(xué)知識做一個(gè)小結(jié),鍛煉了自己思考問題和解決問題的能力。1.2 內(nèi)容要求: 簡單的公司工資管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(1)公司主要有4類人員:經(jīng)理、技術(shù)員、銷售員、銷售經(jīng)理。要求存儲這些人的職工號、姓名、月工資、崗位、年齡、性別等信息。(2)工資的計(jì)算辦法:經(jīng)理:固定月薪為8000;技術(shù)員:工作時(shí)間*小時(shí)工資(100元每小時(shí));銷售員:銷售額*4%提成;銷售經(jīng)理:底薪(5000)+所轄部門銷售額總額*0.5%;(3)類的層次如下:(4)完成增刪改、查詢、持久化操作二 、系統(tǒng)總體設(shè)計(jì)在程序中,JFrame為頂層容器,包括JLabel,Jpanel等常用組件。還有File控制“基本信息 txt”,并在程序開始,初始化容器、初始化組件,設(shè)置事件監(jiān)聽器。此程序首先確定一個(gè)類繼承JFrame作為底層容器。功能選項(xiàng):JTextField為文本框,JButton為頁面控制按鈕。首先初始化各組按鈕及基本信息表,之后創(chuàng)建對象,定義文本框長度,注冊監(jiān)聽器并用到this關(guān)鍵字,將對象的可編輯性定義為假。應(yīng)用JComboBox下拉列表組件進(jìn)行崗位與性別的選擇。之后進(jìn)行對象的調(diào)用,進(jìn)行文件的存取和文本框內(nèi)的輸入輸出,并設(shè)置異常處理警示機(jī)制。這個(gè)設(shè)計(jì)主要是實(shí)現(xiàn)員工工資信息的添加、刪除、查詢、修改四個(gè)方面的內(nèi)容,分別增加了ActionListener監(jiān)聽器來實(shí)現(xiàn)。層次如下:工資管理系統(tǒng)修改添加刪除查詢?nèi)?、系統(tǒng)詳細(xì)設(shè)計(jì)(程序源代碼)3.1 構(gòu)造wage函數(shù):import java.awt.Panel;SuppressWarnings("serial")class Wage extends Panel String s1,s2,s3,s4;double s5,s6,s7,s8;Wage(String s1,String s2,String s3,String s4,double s5,double s6,double s7,double s8) this.s1=s1; this.s2=s2; this.s3=s3; this.s4=s4; this.s5=s5; this.s6=s6; this.s7=s7; this.s8=s8;3.2 用戶登陸界面及主函數(shù):import java.awt.BorderLayout;import java.awt.Container;import java.awt.Font;import java.awt.TextField;import java.awt.event.*;import javax.swing.*;SuppressWarnings("serial")public class Worker extends JFrame public JFrame frame; public Container c; public Worker() frame = new JFrame("職工工資管理系統(tǒng)"); c = frame.getContentPane(); c.setLayout(null); frame.setResizable(false); JLabel information0= new JLabel("歡迎進(jìn)入職工工資管理系統(tǒng)",JLabel.CENTER); information0.setFont(new Font("宋體",Font.BOLD,25); information0.setSize(350,50); information0.setLocation(0,0); c.add(information0); JLabel yonghuL= new JLabel("用戶名:",JLabel.CENTER); yonghuL.setFont(new Font("宋體",Font.BOLD,18); yonghuL.setSize(80,30); yonghuL.setLocation(60,70); c.add(yonghuL); final TextField yonghuT=new TextField(); yonghuT.setSize(90,25); yonghuT.setLocation(170,70); c.add(yonghuT); JLabel koulingL= new JLabel("口令:",JLabel.CENTER); koulingL.setFont(new Font("宋體",Font.BOLD,18); koulingL.setSize(80,30); koulingL.setLocation(60,110); c.add(koulingL); final TextField koulingT=new TextField(); koulingT.setEchoChar(*); koulingT.setSize(90,25); koulingT.setLocation(170,110); c.add(koulingT); JButton registerButton = new JButton( "登錄" ); registerButton.addActionListener( new ActionListener() public void actionPerformed( ActionEvent event ) String a,b; a=yonghuT.getText(); b=koulingT.getText(); if(a.equals("工資管理系統(tǒng)")=true)&&(b.equals("123456")=true) z2 win=new z2(); win.setSize(500,400); win.setVisible(true); win.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); win.setResizable(false); win.setLocation(100,100); else JOptionPane.showMessageDialog(null,"對不起,你輸入的信息錯(cuò)誤!"); ); registerButton.setLocation(40,150); registerButton.setSize(80,30); registerButton.setFont(new Font("宋體",Font.BOLD,18); c.add(registerButton, BorderLayout.CENTER); JButton backButton = new JButton( "退出" ); backButton.addActionListener( new ActionListener() public void actionPerformed( ActionEvent event ) System.exit(0); ); backButton.setLocation(190,150); backButton.setSize(80,30); backButton.setFont(new Font("宋體",Font.BOLD,18); c.add(backButton, BorderLayout.CENTER); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(350,300); frame.setLocation(100,100); frame.setVisible(true); public static void main(String args) new Worker();3.3 工資管理的添加、刪除、修改、查找、退出功能的實(shí)現(xiàn):import java.awt.*;import java.awt.event.*;import java.io.*;import java.util.*;import javax.swing.*;SuppressWarnings("serial")class z2 extends JFrame implements ActionListener SuppressWarnings("rawtypes")LinkedList list=null; public JFrame f; PrintJob p=null; Graphics g=null; public Container con; Object position="經(jīng)理","技術(shù)員","銷售員","銷售經(jīng)理" SuppressWarnings( "rawtypes", "unchecked" )JComboBox combobox_position= new JComboBox(position); Object sex="男","女" SuppressWarnings( "unchecked", "rawtypes" )JComboBox combobox_sex= new JComboBox(sex);JLabel L1 = new JLabel("ID:",JLabel.CENTER),L2 = new JLabel("姓 名:",JLabel.CENTER),L3 = new JLabel("崗位:",JLabel.CENTER),L4 = new JLabel("性別:",JLabel.CENTER),L5 = new JLabel("年齡:",JLabel.CENTER),L6 = new JLabel("銷售額:",JLabel.CENTER),L7 = new JLabel("工作時(shí)間:",JLabel.CENTER),L8 = new JLabel("總工資:",JLabel.CENTER);JTextField T1 = new JTextField("編號"),T2 = new JTextField("姓名"),T3 = new JTextField(),T4 = new JTextField(),T5 = new JTextField("0"),T6 = new JTextField("0"),T7= new JTextField("0"), T8= new JTextField("0");JLabel L9 = new JLabel("職工工資管理系統(tǒng)",JLabel.CENTER);JTextArea showT= new JTextArea(12,33);JButton b_add=new JButton("添加");JButton b_move=new JButton("刪除");JButton b_modify=new JButton("修改");JButton b_xun=new JButton("查詢");JButton b_back=new JButton("退出");SuppressWarnings("rawtypes")z2() super("職工工資管理窗口"); list=new LinkedList (); con=getContentPane(); JScrollPane pane=new JScrollPane(showT); showT.setEditable(false); T8.setEditable(false); JPanel save=new JPanel(), p2=new JPanel(),p3=new JPanel(), p4=new JPanel(), p5=new JPanel(), p6=new JPanel(); save.setLayout(new GridLayout(4,5); save.add(L1);save.add(T1);save.add(L2);save.add(T2); save.add(L3);save.add(combobox_position); save.add(L4);save.add(combobox_sex);save.add(L5);save.add(T5); save.add(L6);save.add(T6);save.add(L7); save.add(T7);save.add(L8);save.add(T8);save.add(L9); p6.add(L9); p2.setLayout(new GridLayout(2,2); p3.setLayout(new GridLayout(2,2); p4.setLayout(new GridLayout(8,1); p4.add(b_add);p4.add(b_move);p4.add(b_xun); p4.add(b_modify);p4.add(b_back); p5.add(pane); JSplitPane split_one,split_two,split_three,split_four; split_one=new JSplitPane(JSplitPane.VERTICAL_SPLIT,p6,p4); split_two=new JSplitPane(JSplitPane.VERTICAL_SPLIT,p4,save); split_three=new JSplitPane(JSplitPane.VERTICAL_SPLIT,save,p3); split_four=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,true,split_three,p5); con.add(split_one,BorderLayout.NORTH); con.add(split_two,BorderLayout.CENTER); con.add(split_three,BorderLayout.SOUTH); con.add(split_four,BorderLayout.EAST); b_add.addActionListener(this); b_xun.addActionListener(this); b_move.addActionListener(this); b_modify.addActionListener(this); b_back.addActionListener(this); SuppressWarnings( "rawtypes", "unchecked" )public void actionPerformed(ActionEvent e) /添加方法 if(e.getSource()=b_add) String ss1=null; ss1=T1.getText(); if(combobox_position.getSelectedItem().equals("經(jīng)理") else if(combobox_position.getSelectedItem().equals("技術(shù)員") else if(combobox_position.getSelectedItem().equals("銷售員") else if(combobox_position.getSelectedItem().equals("銷售經(jīng)理") double securityWarningPointX = 0;Wage cus=new Wage(ss1, ss1, ss1, ss1, ABORT, securityWarningPointX, BOTTOM_ALIGNMENT, ABORT); if(cus.s1.equals("編號") JOptionPane.showMessageDialog(null,"請輸入職工信息!"); elsetryFileInputStream come_in11=new FileInputStream("zhigong1.txt"); ObjectInputStream in11=new ObjectInputStream(come_in11);list=( LinkedList)in11.readObject();in11.close(); catch(ClassNotFoundException event) catch(IOException event) boolean b=true; int number11=list.size(); P: for(int i=0;i<number11;i+) Wage cus_1=(Wage)list.get(i); if(cus_1.s1.equals(ss1) b=false;break P; if(b=false) JOptionPane.showMessageDialog(null,"此ID已存在,請仔細(xì)核對!"); else list.add(cus); JOptionPane.showMessageDialog(null,"此職工工資信息已錄入!"); try FileOutputStream file1=new FileOutputStream("zhigong1.txt"); ObjectOutputStream out1=new ObjectOutputStream(file1); out1.writeObject(list); out1.close(); catch(IOException event) T1.setText("編號");T2.setText("姓名"); T3.setText("");T4.setText(""); T5.setText("0");T6.setText("0");T7.setText("0"); /刪除方法 if(e.getSource()=b_move) showT.setText(null); String ss10 = JOptionPane.showInputDialog(z2.this, "輸入您需要?jiǎng)h除職工信息的ID" ); try FileInputStream come_in22=new FileInputStream("zhigong1.txt"); ObjectInputStream in22 =new ObjectInputStream(come_in22);list=(LinkedList)in22.readObject(); boolean b2=true;int a2=0; int number2=list.size(); P: for(int i=0;i<number2;i+) Wage cus_2=(Wage)list.get(i); if(cus_2.s1.equals(ss10) a2=i; list.remove(a2); JOptionPane.showMessageDialog(null,"此職工工資信息已刪除!"); in22.close(); FileOutputStream file1=new FileOutputStream("zhigong1.txt"); ObjectOutputStream out1=new ObjectOutputStream(file1); out1.writeObject(list); out1.close(); b2=false; break P; if(b2=true) JOptionPane.showMessageDialog(null,"沒有此職工編號為"+ss10+"的 工資信息!"); in22.close(); catch (IOException e1) e1.printStackTrace(); catch (ClassNotFoundException e1) e1.printStackTrace(); /修改方法 else if(e.getSource()=b_modify) showT.setText(null); String ss10 = JOptionPane.showInputDialog(z2.this, "輸入您需要修改職工信息的ID" ); try FileInputStream come_in42=new FileInputStream("zhigong1.txt"); ObjectInputStream in42 =new ObjectInputStream(come_in42); list=(LinkedList)in42.readObject(); in42.close(); catch(ClassNotFoundException event) catch(IOException event) boolean b4=true; int number4=list.size(); P: for(int i=0;i<number4;i+) Wage cus_4=(Wage)list.get(i); if(cus_4.s1.equals(ss10) b4=false;break P; if(b4=true) JOptionPane.showMessageDialog(null,"沒有此職工編號為"+ss10+"的工資!"); else /查詢方法 if(e.getSource()=b_xun) showT.setText(null); String ss10 = JOptionPane.showInputDialog(z2.this, "輸入您需要查詢 職工信息的ID" ); try FileInputStream come_in42=new FileInputStream("zhigong1.txt"); ObjectInputStream in42 =new ObjectInputStream(come_in42); list=( LinkedList)in42.readObject(); in42.close(); catch(ClassNotFoundException event) catch(IOException event) boolean b4=true;int a4=0; int number4=list.size(); P: for(int i=0;i<number4;i+) Wage cus_4=(Wage)list.get(i); if(cus_4.s1.equals(ss10) a4=i;b4=false;break P; if(b4=true) JOptionPane.showMessageDialog(null,"沒有此職工編號為"+ss10+"的工資!"); else Wage cha=(Wage)list.get(a4); showT.append("t職工工資條"); showT.append("n "); showT.append("ID:"+cha.s1); showT.append("t姓 名:"+cha.s2); showT.append("n "); showT.append("崗位:"+combobox_position.getSelectedItem(); showT.append("t性別:"+combobox_sex.getSelectedItem(); showT.append("n "); showT.append("年齡:"+cha.s5); showT.append("t銷售額:"+cha.s6); showT.append("n "); showT.append("工作時(shí)間:"+cha.s7); showT.append("t總工資:"+cha.s8); /退出方法 else if(e.getSource()=b_back) System.exit(0); 四 、運(yùn)行結(jié)果及分析4.1登錄窗口進(jìn)入工資管理系統(tǒng)界面,用戶名和密碼正確才可進(jìn)入,否則顯示輸入信息錯(cuò)誤4.2初始化界面4.3 添加窗口 添加信息時(shí)如果ID相同則提示此ID已存在,請仔細(xì)核對,如果沒輸入信息,則提示請輸入職工工資信息,如果正確輸入則提示此職工信息已錄入4.4刪除窗口輸入需刪除員工的ID進(jìn)行刪除4.5查詢窗口輸入需查詢的員工ID進(jìn)行查詢4.6修改窗口輸入需修改信息的員工ID進(jìn)行修改信息五、 課程總結(jié)通過這次設(shè)計(jì),我深深的意識到自己在Java方面有多么的薄弱,同時(shí)深刻的體會到平時(shí)多做練習(xí)的重要性,這次設(shè)計(jì)讓對Java有了更全面的了解,在解決實(shí)際問題上能夠統(tǒng)籌全局,逐步解決。雖然這次課設(shè)做的程序不是很完美,沒有實(shí)現(xiàn)所有要求的功能,但是通過我查找資料、認(rèn)真修改,是我在Java上有顯著的提高。六 、致謝本論文是在譚曉波老師指導(dǎo)下完成的。他嚴(yán)肅的科學(xué)態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神,精益求精的工作作風(fēng),深深地感染和激勵(lì)著我。在此,我向譚老師致以誠摯的謝意和崇高的敬意。同時(shí)我還要感謝我的同學(xué)們,在論文設(shè)計(jì)中,他們給了我很多的建議和幫助。我還要感謝我的論文中被引用或參考的文獻(xiàn)的作者。七 、參考文獻(xiàn)1郎波. Java語言程序設(shè)計(jì). 北京: 清華大學(xué)出版社.20052嚴(yán)桂蘭、劉甲耀、劉波.Java編程模式與范例高級應(yīng)用開發(fā).北京:機(jī)械工業(yè)出版社.20023黃明、梁旭、周紹斌.Java課程設(shè)計(jì).北京:電子工業(yè)出版社.200620 沈陽理工大學(xué)

注意事項(xiàng)

本文(JAVA課程設(shè)計(jì)職工工資管理系統(tǒng))為本站會員(仙***)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!