




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
信息與計算科學(xué)專業(yè)報告1班學(xué)生:王慧蘭201318030120王巾201318030121 張建宏201318030128摘要率,使人事管理有更多的精力去做人力資源分析、研究和開發(fā)工作,采用SQLServer作為開發(fā)數(shù)據(jù)庫的工具。企業(yè)人事管理系統(tǒng)的具體企業(yè)人事進(jìn)行信息的檢索與處理。人事管理的需要。字:企業(yè)人事管理系統(tǒng)SQLServerJava33第一章系統(tǒng)規(guī)劃 1 3 5 第二章需求分析 6系統(tǒng)需求 6功能需求 6數(shù)據(jù)流圖 7系統(tǒng)頂層圖 7數(shù)據(jù)流程圖一層分解圖 7數(shù)據(jù)流程圖二層分解圖 9數(shù)據(jù)字典 11數(shù)據(jù)流條目 11數(shù)據(jù)存儲 14第三章概念設(shè)計 15聯(lián)系 15ER 5第四章邏輯設(shè)計 19概念模型向關(guān)系模型的轉(zhuǎn)換 19概念模型的優(yōu)化 201確定范式級別 202實施規(guī)范化處理 20第五章物理設(shè)計 22構(gòu) 22設(shè)計 22存取方法 24性 24第六章實現(xiàn)、運(yùn)行與維護(hù) 25 27界面 27 信息測試 29評價信息測試 29測試 30測試 31 總結(jié) 33 34 第一章系統(tǒng)規(guī)劃來很多方便,如檢索迅速,查找方便,可靠量大,保密性好,成本低等??尚行苑治鲅芯康哪康氖怯米钚〉拇鷥r在盡可能短的時間內(nèi)確定數(shù)據(jù)庫系統(tǒng)是否可能開發(fā),是否值得開發(fā)(在該報告中主要是考察《企業(yè)人事管理系統(tǒng)》是否可能開發(fā),是否值得開發(fā),是否可以開發(fā))。其實質(zhì)是在較高層次上以較抽象的方式進(jìn)行的,簡化的壓縮的需求分析和概要設(shè)計過程。企業(yè)人事管理系統(tǒng)建宏、王巾業(yè)可行性研究的前提1.2.1目標(biāo)人事管理系統(tǒng)用于支持企業(yè)完成人事管理工作,有如下三個方面的目標(biāo):2.支持企業(yè)高效率完成人事管理日常業(yè)務(wù),包括企業(yè)人事的增加、查詢、修改、刪除;進(jìn)行該系統(tǒng)的方案設(shè)計論證,需要實現(xiàn)以下功能:a.建立員工基本信息表,包括:員工編號、姓名、部門、性別、出生日期、籍貫、職稱、進(jìn)入公司時間等;b考勤信息表,包括:員工編號、姓名、日期、本月天數(shù)、出勤、曠工、早退、加班等;c、部門、業(yè)務(wù)水平、工作業(yè)績、時間、工作態(tài)度等;核、房租、實發(fā)工資等;管理系統(tǒng)必須提供部門信息、員工信息等基本信息,還必須提供強(qiáng)大的查、刪、改功能??梢苑譃椴煌瑱?quán)限、不同用戶的對該系統(tǒng)進(jìn)行操作。另外,該系統(tǒng)還必須保證數(shù)據(jù)的安全性、完整性和準(zhǔn)確性?;跀?shù)據(jù)庫的管理與查詢系統(tǒng)?,F(xiàn)在硬件、軟件的性能指標(biāo)和開發(fā)我們掌握技術(shù)的熟練程度。本系統(tǒng)開發(fā)設(shè)計中用到的技術(shù)因素有: (1)本系統(tǒng)開發(fā)方法。在本小組中,小組成員比較熟練地掌握開發(fā)信息系統(tǒng)的過程和技術(shù),在信息開發(fā)方法上不存在太大的問題。 (2)網(wǎng)絡(luò)和通信技術(shù)。因為在本地客戶端模擬運(yùn)行的系統(tǒng),因此不需要配置和網(wǎng)絡(luò)。 (3)數(shù)據(jù)庫技術(shù)。小組成員具有應(yīng)用數(shù)據(jù)庫開發(fā)小型信息系統(tǒng)的經(jīng)驗。(4)Java開發(fā)技術(shù)。小組成員需要熟練使用Java語言。綜上所述,本系統(tǒng)的開發(fā)在技術(shù)上是可行的。APMServ5.2.0工具建立數(shù)據(jù)庫,并通過eclipse使兩者進(jìn)行連接具有一定開發(fā)經(jīng)驗。據(jù)索數(shù)據(jù)速度快,效率高。三、數(shù)據(jù)應(yīng)用共享性好。由于對數(shù)據(jù)進(jìn)行集中管理,可以通過網(wǎng)絡(luò)等各種技術(shù),使得數(shù)據(jù)額應(yīng)用能夠共享,并且數(shù)據(jù)應(yīng)用的效率也高。庫技術(shù)認(rèn)識不足,導(dǎo)致設(shè)計出來的數(shù)據(jù)結(jié)構(gòu)或應(yīng)用程序往往存在各種各樣問題,并因此造成在生產(chǎn)環(huán)境中,系統(tǒng)故障層出不窮,直接影響業(yè)務(wù)運(yùn)轉(zhuǎn)??蛯?shù)據(jù)庫入侵,并盜取想要的資料。只需要一臺作為服務(wù)器的計算機(jī)就可以運(yùn)行,因此開發(fā)費(fèi)用較低。的擴(kuò)展和網(wǎng)絡(luò)安全技術(shù)的不斷提高,用信表現(xiàn)出了巨大的經(jīng)濟(jì)價值。把人士管理系統(tǒng)納入公司內(nèi)部的Internet體系中去,理系統(tǒng)才能滿足這些要求。國作和工作方式符合工作人員和客戶的日常習(xí)慣,而且操作方便靈活,便于使用。因此,該系統(tǒng)具有可行性。經(jīng)過技術(shù)、經(jīng)濟(jì)、社會等方面的可行性分析,可以確定本系統(tǒng)的開發(fā)完全必要。第二章需求分析系統(tǒng)需求方進(jìn)行操作。能需求本系統(tǒng)分為五個模塊:員工基本信息、員工工作評價信息、員工考勤信息、信息、系統(tǒng)。得到如圖所示的系統(tǒng)功能模塊圖:據(jù)流圖1系統(tǒng)頂層圖數(shù)據(jù)流程圖一層分解圖價信息,員工工資信息數(shù)據(jù)流程圖二層分解圖數(shù)據(jù)流程圖三層分解圖員工工作評價數(shù)據(jù)流程圖四層分解圖員工考勤,查詢員工考勤數(shù)據(jù)流程圖五層分解圖員工工資,增加員工記錄,修改員工記錄,刪除員工記錄典系統(tǒng)數(shù)據(jù)庫表:位置:員工員工編號+姓名+部門+性別+出生日期+籍貫+職稱+進(jìn)入公司:根據(jù)企業(yè)的員工具體錄用情況來確定的新員工進(jìn)行唯一編號位置:員工息情況=員工編號+姓名+日期+本月天數(shù)+出勤+曠工+早退+:根據(jù)企業(yè)具體情況來確定行唯一編號位置:員工定義:員工工作評價情況=員工編號+姓名+部門+業(yè)務(wù)水平+工作業(yè)績+時間+度:根據(jù)企業(yè)具體情況來確定行唯一編號位置:員工:根據(jù)企業(yè)具體情況來確定行唯一編號數(shù)據(jù)存儲確定數(shù)據(jù)庫的存儲結(jié)構(gòu)主要指確定數(shù)據(jù)的存放位置和存儲結(jié)構(gòu),包括確定關(guān)系、索引、日志、備份等的存儲安排及存儲結(jié)構(gòu),以及確定系統(tǒng)存儲參數(shù)的配置。表、索引等)分別放在不同的磁盤,可以改進(jìn)系統(tǒng)的性第三章概念設(shè)計實體之間的聯(lián)系員工信息對應(yīng)一個部門信息,所以員工信息與部門信息之間是一對多的關(guān)系。將每一個實體轉(zhuǎn)換成一個關(guān)系(關(guān)系就是給出關(guān)系名,寫出屬性,并標(biāo)明該關(guān)系的主碼)a.員工基本信息(員工編號、姓名、部門、性別、出生日期、籍貫、職稱、進(jìn)入公司時間)。在此聯(lián)系中主碼為員工編號,因為員工信息與部門是多對一的聯(lián)系,所以將部門傳入員工基本信息中做非主屬性。b.員工考勤信息(員工編號、姓名、日期、本月天數(shù)、出勤、曠工、早退、加班)工作態(tài)度)d.員工工資信息(員工編號、姓名、時間、底薪、獎金、扣考核、房租、實發(fā)工資)。3.2E-R圖第四章邏輯設(shè)計模型向關(guān)系模型的轉(zhuǎn)換其由概念模型向關(guān)系模型轉(zhuǎn)化,并且根據(jù)范式化理論進(jìn)行優(yōu)化。模型的優(yōu)化確定范式級別根據(jù)上述分析所歸結(jié)出來的數(shù)據(jù)依賴的種類和在本系統(tǒng)實際的開發(fā)過程中,式應(yīng)達(dá)到BCNF。實施規(guī)范化處理的碼。對于實體間的聯(lián)系則有以下不同的情況:本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為各實體碼的組合。聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為n端實體的碼。式。碼的組合具有相同碼的關(guān)系模式可合并。第五章物理設(shè)計存儲結(jié)構(gòu)通過需求分析,概要設(shè)計和邏輯設(shè)計流程得到本系統(tǒng)的數(shù)據(jù)庫結(jié)構(gòu)。據(jù)庫的表設(shè)計進(jìn)一步確定上一章邏輯設(shè)計中設(shè)計好的關(guān)系模式中各個數(shù)據(jù)項的類型和長到以下表結(jié)構(gòu):及長度gidvarchar0)namedept部門varchar0)sexvarchar)birthdayplacevarchar0)levelvarchar0)date信息表及長度idvarchar0)namevarchar0)datedays數(shù)varchar0)varchar0)absentvarchar0)earlyvarchar0)qovervarchar0)信息表及長度pjidvarchar0)pjnamevarchar0)pjdept部門varchar0)pjlevelvarchar0)result績varchar0)pjdatevarchar0)pjposition度varchar0)pjothervarchar0)評價信息表及長度varchar0)varchar0)varchar0)varchar0)varchar0)varchar0)agevarchar0)信息表系模式的存取方式索引。據(jù)庫安全性密要求:此系統(tǒng)可以分為用戶和管理員,用戶可以瀏覽自己的個人信管理系統(tǒng)的各種信息。技術(shù)完備、成熟,經(jīng)濟(jì)效益合理,滿足安全真實的企業(yè)人事管理信息系要求:第六章實現(xiàn)運(yùn)行與維護(hù)數(shù)據(jù)進(jìn)行程序調(diào)試。計戶登錄界面用戶名、密碼,以及確定用戶身份。其界面如下圖:登陸成功后的頁面:面信息視圖:評價視圖:視圖:視圖:系統(tǒng)視圖:試工基本信息測試ab.按員工編號查詢查找員工信息頁面:查詢結(jié)果:查找員工信息頁面:增加成功:結(jié)果顯示:b.修改員工信息修改成功:執(zhí)行操作:刪除成功:工工作評價測試員工考勤測試查詢結(jié)果:面員工工資測試面增加成功:結(jié)果顯示:b.修改工資記錄修改成功頁面:結(jié)果顯示:刪除成功:結(jié)果顯示:護(hù)或軟件開發(fā)者協(xié)助系統(tǒng)管理員解決。設(shè)計的,可以很好地管理數(shù)據(jù)。重要的是我們還學(xué)到了很多可多課本上沒有的知識。那就是”團(tuán)結(jié)“”探索“和”支個人的力量什么也做不成,只有大家進(jìn)設(shè)計的老師和同學(xué)們之一深深的感謝。[3]《管理信息系統(tǒng)(第四版)》薛華成著清華大學(xué)出版社2005年主程序:importjavaawteventActionEvent;importjavaawteventActionListener;importjavautilVectorimportjavaxswingJFrameimportjavaxswingJMenuimportjavaxswingJMenuBarimportjavaxswingJMenuItemimportjavaxswingJOptionPaneimportjavaxswingJScrollPaneimportjavaxswingJTable/主界面,顯示表格數(shù)據(jù)/主界面上的菜單欄對象publicclassMainUI/主界面,顯示表格數(shù)據(jù)/主界面上的菜單欄對象privateJFramejf;privateJFramejFrame;privateJMenuBarjmb;privateJMenujm1,jm2,jm3,jm4,jm5;//五個菜單,分別為員工基本信息、員工工作評價、員工考勤、員工工資、系統(tǒng)privateJMenuItemjmxjmx2,jmx3,jmx4,jmx5,jmx6;//員工基本信息的菜單項,分別為查詢所有員工、按,增加員工,修改員工,刪除員工privateJMenuItemjmp;//課程管理的菜單項,分別為privateJMenuItemjmk1,jmk2;//選課管理的菜單項,分別為rivateJMenuItemjmexitrivateJTablejtprivaterivateJMenuItemjmexitrivateJTablejtprivateJScrollPanejsp;//系統(tǒng)的菜單項:退出//表格顯示組件//滾動Pane,表格組件會用到privateVectorVectorString>rowData;//保存從數(shù)據(jù)庫中取得的二維表數(shù)據(jù),用表格組件顯示這些privateVector<String>singleRowData;//保存從數(shù)據(jù)庫中取得的單條記錄publicstaticvoidmain(String[]args){wMainUI}publicMainUI(){jf=newJFrame();//創(chuàng)建Framejmb=newJMenuBar();//以下代碼生成菜單欄、菜單、菜單項jm1=newJMenu("員工基本信息");jm2=newJMenu("員工工作評價");jm3=newJMenu("員工考勤");jm4=newJMenu("員工工資");jm5=newJMenu("系統(tǒng)");jmx1=newJMenuItem("查詢所有員工");jmx1.addActionListener(this);//增加事件監(jiān)聽者jmx2=newJMenuItem("按員工編號查詢");jmx2.addActionListener(this);jmx3=newJMenuItem("按員工姓名查詢");jmx3.addActionListener(this);jmx4=newJMenuItem("增加員工");jmx4.addActionListener(this);jmx5=newJMenuItem("修改員工");jmx5.addActionListener(this);jmx6=newJMenuItem("刪除員工");jmx6.addActionListener(this);jmp=newJMenuItem("查詢所有員工工作評價");jmp.addActionListener(this);jmk1=newJMenuItem("查詢所有員工考勤");jmk1.addActionListener(this);jmk2=newJMenuItem("查詢員工缺勤");jmk2.addActionListener(this);jmg1=newJMenuItem("查詢所有員工工資");jmg1.addActionListener(this);jmg2=newJMenuItem("增加員工工資記錄");jmg2.addActionListener(this);jmg3=newJMenuItem("修改員工工資記錄");jmg3.addActionListener(this);jmg4=newJMenuItem("刪除員工工資記錄");jmg4.addActionListener(this);jmexit=newJMenuItem("退出");jmexit.addActionListener(this);jf.setJMenuBar(jmb);jf.setTitle("企業(yè)人事管理系統(tǒng)");//下兩行把菜單項和菜單連接起來jm1.add(jmx1);jm1.add(jmx2);jm1.add(jmx3);jm1.addSeparator();jm1.add(jmx4);jm1.add(jmx5);jm1.add(jmx6);jm2.add(jmp);jm3.add(jmk1);jm3.add(jmk2);jm4.add(jmg1);jm4.addSeparator();jm4.add(jmg2);jm4.add(jmg3);jm4.add(jmg4);jm5.add(jmexit);jmb.add(jm1);jmb.add(jm2);jmb.add(jm3);jmb.add(jm4);jmb.add(jm5);//把菜單和菜單欄連接起來rowDatanewVector<Vector<String>>();//初始化數(shù)據(jù)變量ngleRowDatanewVectorStringjf.setExtendedState(JFrame.MAXIMIZED_BOTH);//設(shè)定主界面最大化,并顯示它jf.setVisible(true);}publicvoidactionPerformedActionEvente){//事件處理方法,選擇菜單項會執(zhí)行此函數(shù)if(e.getSource()==jmexit)System.exit(0);//選擇“退出“菜單項,執(zhí)行此語句if(e.getSource()==jmp)//選擇“查詢所有員工評價“菜單項,執(zhí)行此語句{newPjAdmin().queryAll(rowData);//通過PjAdmin對象執(zhí)行queryAll方法查詢數(shù)據(jù)庫,得到的數(shù)據(jù)放入rowData中this.displayWorkers1();//通過表格組件顯示數(shù)據(jù)}if(e.getSource()==jmk1)//選擇“查詢所有員工考勤“菜單項,執(zhí)行此語句{newKqAdmin().queryAll(rowData);//通過KqAdmin對象執(zhí)行queryAll方法查詢數(shù)據(jù)庫,得到的數(shù)據(jù)放入rowData中this.displayWorkers3();//通過表格組件顯示數(shù)據(jù)}if(e.getSource()==jmk2)//選擇“查詢員工缺勤“菜單項,執(zhí)行此語句{newKqAdmin().queryAll(rowData);//通過KqAdmin對象執(zhí)行queryAll方法查詢數(shù)據(jù)庫,得到的數(shù)據(jù)放入rowData中utDialog號newXxAdmin().queryByYgid(rowData,Ygid);//通過XxAdmin對象傳遞員工編號并查詢數(shù)據(jù)據(jù)放入rowData中this.displayWorkers3();//通過表格組件顯示數(shù)據(jù)}if(e.getSource()==jmg1)//選擇“查詢所有員工工資“菜單項,執(zhí)行此語句{newGzAdmin().queryAll(rowData);//通過GzAdmin對象執(zhí)行queryAll方法查詢數(shù)據(jù)庫,得到的數(shù)據(jù)放入rowData中this.displayWorkers2();}if(e.getSource()==jmg2){/通過表格組件顯示數(shù)據(jù)//選擇“增加員工工資記錄“菜單項,執(zhí)行此if語句this.singleRowData.clear();//使用vector變量前,先清空newGzEditUI(jf,"增加工資記錄",true,singleRowData);//生成員工工資記錄編輯窗口,并取得新增員工工資數(shù)據(jù),放入存儲記錄的數(shù)據(jù)變量singleRowData中intrs=newGzAdmin().insert(singleRowData);//通過GzAdmin對象的insert方法向數(shù)據(jù)庫插入記錄if(rs>0)//判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功增加員工工資記錄!");elseJOptionPane.showMessageDialog(null,"增加員工工資記錄失??!");newGzAdminqueryAllrowData//通過GZAdmin對象執(zhí)行queryAll方法查詢數(shù)據(jù)庫,得到的入rowData中this.displayWorkers2();//通過表格組件顯示數(shù)據(jù)}if(e.getSource()==jmg3){//選擇“修改員工工資記錄“菜單項,執(zhí)行此if語句StringYgid=JOptionPane.showInputDialog("請輸入員工編號:");//通過輸入對話框得到待修改員newGzAdmin().queryByYgid(rowData,Ygid);//通過GzAdmin對象傳遞學(xué)號并查詢數(shù)據(jù)庫,數(shù)據(jù)放入rowData中newGzEditUIjf工工資記錄",true,rowData.get(0));//生成員工工資記錄編輯窗口,并傳入學(xué)生數(shù)據(jù),用戶編輯后再取回放入存儲記錄的數(shù)據(jù)變量中intrs=newGzAdmin().update(rowData.get(0));//通過GzAdmin對象的update方法向數(shù)據(jù)庫修改記錄,rowDataget0)表示單條記錄ifrs//判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功修改員工工資記錄!");elseJOptionPane.showMessageDialog(null,"修改員工工資記錄失?。?);newGzAdminqueryAllrowData數(shù)據(jù)放入rowData中thisdisplayWorkers;}//通過GzAdmin對象執(zhí)行queryAll方法查詢數(shù)據(jù)庫,/通過表格組件顯示數(shù)據(jù)if(e.getSource()==jmg4){//選擇“刪除員工工資記錄“菜單項,執(zhí)行此if語句StringYgid=JOptionPane.showInputDialog("待刪除員工編號:");//通過輸入對話框得到待刪除員號newGzAdminqueryByYgidrowDataYgid;//通過GzAdmin對象傳遞員工編號并查詢數(shù)據(jù)庫,得rowData中newGzEditUIjf工工資記錄",true,rowData.get(0));//生成員工記錄編輯窗口,并傳入待修數(shù)據(jù),待用戶確認(rèn)待刪除數(shù)據(jù)intrsnewGzAdmin).delete(Ygid);錄值ifrs0)//通過GzAdmin對象的delete方法向數(shù)據(jù)庫刪除記錄,/判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功刪除員工工資記錄!");elseJOptionPane.showMessageDialog(null,"刪除員工記錄工資失敗!");newGzAdminqueryAllrowDatarowData中thisdisplayWorkers;/通過GzAdmin對象執(zhí)行queryAll方法查詢數(shù)據(jù)庫,得/通過表格組件顯示數(shù)據(jù)}if(e.getSource()==jmx1)//選擇“查詢所有員工“菜單項,執(zhí)行此語句{newXxAdmin().queryAll(rowData);//通過XxAdmin對象執(zhí)行queryAll方法查詢數(shù)據(jù)庫,得到的數(shù)據(jù)放入rowData中this.displayWorkers();//通過表格組件顯示數(shù)據(jù)}if(e.getSource()==jmx2){//選擇“按員工編號查詢員工“菜單項,執(zhí)行此if語句StringYgid=JOptionPane.showInputDialog("請輸入員工編號:");//通過輸入對話框得到待查詢員號newXxAdmin().queryByYgid(rowData,Ygid);//通過XxAdmin對象傳遞員工編號并查詢數(shù)據(jù)據(jù)放入rowData中thisdisplayWorkers//通過表格組件顯示數(shù)據(jù)}if(e.getSource()==jmx3){//選擇“按員工姓名查詢員工“菜單項,執(zhí)行此if語句StringYgname=JOptionPane.showInputDialog("請輸入員工姓名:");//通過輸入對話框得到待查詢員工姓名newXxAdminqueryByYgnamerowDataYgname;//通過XxAdmin對象傳遞省份數(shù)據(jù)并查詢數(shù)得到的數(shù)據(jù)放入rowData中thisdisplayWorkers//通過表格組件顯示數(shù)據(jù)}if(e.getSource()==jmx4){//選擇“增加員工“菜單項,執(zhí)行此if語句this.singleRowData.clear();//使用vector變量前,先清空newXxEditUI(jf,"增加員工記錄",true,singleRowData);//生成員工記錄編輯窗口,并取得新增員工數(shù)據(jù),放入存儲記錄的數(shù)據(jù)變量singleRowData中intrs=newXxAdmin().insert(singleRowData);//通過XxAdmin對象的insert方法向數(shù)據(jù)庫插入記錄if(rs>0)//判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功增加員工記錄!");elseJOptionPane.showMessageDialog(null,"增加員工記錄失敗!");newXxAdminqueryAllrowData//通過XxAdmin對象執(zhí)行queryAll方法查詢數(shù)據(jù)庫,得到的數(shù)rowData中this.displayWorkers();//通過表格組件顯示數(shù)據(jù)}if(e.getSource()==jmx5){//選擇“修改員工“菜單項,執(zhí)行此if語句StringYgid=JOptionPane.showInputDialog("請輸入員工編號:");//通過輸入對話框得到待修改員號newXxAdmin().queryByYgid(rowData,Ygid);//通過XxAdmin對象傳遞并查詢數(shù)據(jù)據(jù)放入rowData中newXxEditUIjf員工記錄",true,rowData.get(0));//生成員工記錄編輯窗口,并傳入待修改員,用戶編輯后再取回放入存儲記錄的數(shù)據(jù)變量中intrs=newXxAdmin().update(rowData.get(0));//通過XxAdmin對象的update方法向數(shù)據(jù)庫修改記錄,rowDataget0)表示單條記錄ifrs//判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功修改員工記錄!");elseJOptionPane.showMessageDialog(null,"修改員工記錄失?。?);newXxAdminqueryAllrowData數(shù)據(jù)放入rowData中thisdisplayWorkers}//通過XxAdmin對象執(zhí)行queryAll方法查詢數(shù)據(jù)庫,/通過表格組件顯示數(shù)據(jù)if(e.getSource()==jmx6){//選擇“刪除員工“菜單項,執(zhí)行此if語句alog號newXxAdminqueryByYgidrowDataYgid;//通過XxAdmin對象傳遞員工號并查詢數(shù)據(jù)庫,得到DatanewXxEditUIjf員工記錄",true,rowData.get(0));//生成員工記錄編輯窗口,并傳入待修改員,待用戶確認(rèn)待刪除數(shù)據(jù)intrsnewXxAdmin).delete(Ygid);號值ifrs0)//通過XxAdmin對象的delete方法向數(shù)據(jù)庫刪除記錄,/判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功刪除員工記錄!");elseJOptionPane.showMessageDialog(null,"刪除員工記錄失敗!");newXxAdminqueryAllrowDatarowData中thisdisplayWorkers}/通過XxAdmin對象執(zhí)行queryAll方法查詢數(shù)據(jù)庫,得/通過表格組件顯示數(shù)據(jù)}publicvoiddisplayWorkers()//用表格組件jt顯示變量rowData的數(shù)據(jù),其中數(shù)據(jù)從數(shù)據(jù)庫中查詢得到{Vector<String>columns=newVector<String>();//表格表頭中的顯示數(shù)據(jù),6個列名存儲在向量中columns.add("員工編號");columns.add("員工姓名");columns.add("員工部門");columns.add("員工性別");columns.add("員工出生日期");columns.add("員工籍貫");columns.add("員工職稱");columns.add("入職日期");jt=newJTable(rowData,columns);//用表頭vector和數(shù)據(jù)庫中取得數(shù)據(jù)rowData來生成表格jt.setRowHeight(0,30);//以下幾行設(shè)置表格行間距等jt.setRowHeight(25);jt.setRowMargin(5);jsp=newJScrollPane(jt);jf.setContentPane(jsp);jf.validate();}publicvoiddisplayWorkers1()//用表格組件jt顯示變量rowData的數(shù)據(jù),其中數(shù)據(jù)從數(shù)據(jù)庫中查詢得到{Vector<String>columns=newVector<String>();//表格表頭中的顯示數(shù)據(jù),6個列名存儲在向量中columns.add("員工編號");columns.add("員工姓名");columns.add("評價部門");columns.add("業(yè)務(wù)水平");columns.add("工作業(yè)績");columns.add("時間");columns.add("工作態(tài)度");columns.add("其他");jt=newJTable(rowData,columns);//用表頭vector和數(shù)據(jù)庫中取得數(shù)據(jù)rowData來生成表格jt.setRowHeight(0,30);//以下幾行設(shè)置表格行間距等jt.setRowHeight(25);jt.setRowMargin(5);jsp=newJScrollPane(jt);jf.setContentPane(jsp);jf.validate();}publicvoiddisplayWorkers2()//用表格組件jt顯示變量rowData的數(shù)據(jù),其中數(shù)據(jù)從數(shù)據(jù)庫中查詢得到{Vector<String>columns=newVector<String>();//表格表頭中的顯示數(shù)據(jù),6個列名存儲在向量中columns.add("員工編號");columns.add("員工姓名");columns.add("工資日期");columns.add("員工底薪");columns.add("加班獎金");columns.add("遲到扣除");columns.add("房租費(fèi)用");columns.add("實發(fā)工資");jt=newJTable(rowData,columns);//用表頭vector和數(shù)據(jù)庫中取得數(shù)據(jù)rowData來生成表格jt.setRowHeight(0,30);//以下幾行設(shè)置表格行間距等jt.setRowHeight(25);jt.setRowMargin(5);jsp=newJScrollPane(jt);jf.setContentPane(jsp);jf.validate();}publicvoiddisplayWorkers3()//用表格組件jt顯示變量rowData的數(shù)據(jù),其中數(shù)據(jù)從數(shù)據(jù)庫中查詢得到{Vector<String>columns=newVector<String>();//表格表頭中的顯示數(shù)據(jù),6個列名存儲在向量中columns.add("員工編號");columns.add("員工姓名");columns.add("考勤日期");columns.add("本月天數(shù)");columns.add("出勤");columns.add("缺勤");columns.add("早退");columns.add("加班");jt=newJTable(rowData,columns);//用表頭vector和數(shù)據(jù)庫中取得數(shù)據(jù)rowData來生成表格jt.setRowHeight(0,30);//以下幾行設(shè)置表格行間距等jt.setRowHeight(25);jt.setRowMargin(5);jsp=newJScrollPane(jt);jf.setContentPane(jsp);jf.validate();}}員工考勤信息的程序:importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.Statement;importjava.util.Vector;portjavaxswingJTablepublicclassKqAdmin{Connectioncon;Stringsql;Statementstatement;PreparedStatementpstmt;ResultSetrs;intresult;publicKqAdmin(){}publicvoiddbConnect(){try{Class.forName("com.mysql.jdbc.Driver");//加載驅(qū)動程序con=DriverManager.getConnection("jdbc:mysql://localhost/qyrs?useUnicode=true&characterEncoding=utf-8","root","");}catch(Exceptionex){System.out.println(ex);}}publicvoiddbClose(){try{//if(rs.next())rs.close();if(!con.isClosed())con.close();}catch(Exceptionex){System.out.println(ex);}}publicvoidqueryAll(Vector<Vector<String>>rowData){ifrowDataisEmptyrowData.clear();dbConnect();try{sql="SELECTygid,ygname,kqdate,kqdays,kqwork,kqabsent,kqearly,kqoverFROMygkqgl";pstmt=con.prepareStatement(sql);//數(shù)據(jù)庫操作rs=pstmt.executeQuery();rsToRowData(rowData);}catch(Exceptionex){System.out.println(ex);}dbClose();}publicvoidqueryByYgid(Vector<Vector<String>>rowData,Stringygid){ifrowDataisEmptyrowData.clear();dbConnect();try{sql="SELECTygid,ygname,kqdate,kqdays,kqwork,kqabsent,kqearly,kqoverFROMygkqglwhereygid=?";pstmt=con.prepareStatement(sql);//數(shù)據(jù)庫操作pstmt.setString(1,ygid);rs=pstmt.executeQuery();rsToRowData(rowData);}catch(Exceptionex){System.out.println(ex);}dbClose();}publicvoidrsToRowData(Vector<Vector<String>>rowData){try{if(!rs.next()){}else{do{Vector<String>row=newVector<String>();row.add(rs.getString("ygid"));row.add(rs.getString("ygname"));row.add(rs.getString("kqdate"));row.add(rs.getString("kqdays"));row.add(rs.getString("kqwork"));row.add(rs.getString("kqabsent"));row.add(rs.getString("kqearly"));row.add(rs.getString("kqover"));rowData.add(row);}while(rs.next());}}catch(Exceptionex){System.out.println(ex);}}publicvoidqueryByYgname(Vector<Vector<String>>rowData,Stringygname){if(!rowData.isEmpty())rowData.clear();dbConnect();try{sql="SELECTygid,ygname,kqdate,kqdays,kqwork,kqabsent,kqearly,kqoverFROMygkqglwhereygname=?";pstmt=con.prepareStatement(sql);//數(shù)據(jù)庫操作pstmt.setString(1,ygname);rs=pstmt.executeQuery();rsToRowData(rowData);}catch(Exceptionex){System.out.println(ex);}dbClose();}}員工評價信息程序:importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.Statement;importjava.util.Vector;portjavaxswingJTablepublicclassPjAdmin{Connectioncon;Stringsql;Statementstatement;PreparedStatementpstmt;ResultSetrs;intresult;publicPjAdmin(){}publicvoiddbConnect(){try{Class.forName("com.mysql.jdbc.Driver");//加載驅(qū)動程序con=DriverManager.getConnection("jdbc:mysql://localhost/qyrs?useUnicode=true&characterEncoding=utf-8","root","");}catch(Exceptionex){System.out.println(ex);}}publicvoiddbClose(){try{//if(rs.next())rs.close();if(!con.isClosed())con.close();}catch(Exceptionex){System.out.println(ex);}}publicvoidqueryAll(Vector<Vector<String>>rowData){ifrowDataisEmptyrowData.clear();dbConnect();try{sql="SELECTygid,ygname,pjdept,pjlevel,pjresult,pjdate,pjpostion,pjotherFROMyggzpjgl";pstmt=con.prepareStatement(sql);//數(shù)據(jù)庫操作rs=pstmt.executeQuery();rsToRowData(rowData);}catch(Exceptionex){System.out.println(ex);}dbClose();}publicvoidqueryByYgid(Vector<Vector<String>>rowData,Stringygid){if(!rowData.isEmpty())rowData.clear();dbConnect();try{sql="SELECTygid,ygname,pjdept,pjlevel,pjresult,pjdate,pjpostion,pjotherFROMyggzpjglwhereygid=?";pstmt=con.prepareStatement(sql);//數(shù)據(jù)庫操作pstmt.setString(1,ygid);rs=pstmt.executeQuery();rsToRowData(rowData);}catch(Exceptionex){System.out.println(ex);}dbClose();}publicvoidrsToRowData(Vector<Vector<String>>rowData){try{if(!rs.next()){}else{do{Vector<String>row=newVector<String>();row.add(rs.getString("ygid"));row.add(rs.getString("ygname"));row.add(rs.getString("pjdept"));row.add(rs.getString("pjlevel"));row.add(rs.getString("pjresult"));row.add(rs.getString("pjdate"));row.add(rs.getString("pjpostion"));row.add(rs.getStrin
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 便宜門店轉(zhuǎn)讓合同范本
- 促銷返利合同范本
- 個體醫(yī)療機(jī)構(gòu)年度工作總結(jié)報告
- 個人工作自我鑒定簡短
- 勞務(wù)公司派遣員工合同范本
- 單位對外投資合同范本
- 三八節(jié)教師演講稿
- 工業(yè)鍋爐司爐??荚囶}及答案
- 高壓電工(運(yùn)行)習(xí)題+參考答案
- 供貨款合同范本
- 雨污水工程施工組織設(shè)計方案
- sinamic變頻器家族cu250s-操作手冊
- 建筑垃圾回收利用統(tǒng)計臺賬
- 《不一樣的你我他》(完美)課件
- 新蘇教版科學(xué)六年級下冊全冊教案(含反思)
- 原油電脫鹽電脫水技術(shù)
- 國考斷面水站建設(shè)及運(yùn)維技術(shù)要求參考
- Q∕GDW 10799.7-2020 國家電網(wǎng)有限公司電力安全工作規(guī)程 第7部分:調(diào)相機(jī)部分
- 熱工學(xué)后題答案
- 不吸煙不喝酒課件
- 奧數(shù)知識點(diǎn) 間隔問題
評論
0/150
提交評論