




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
信息與計(jì)算科學(xué)專業(yè)報(bào)告1班學(xué)生:王慧蘭201318030120王巾201318030121 張建宏201318030128摘要率,使人事管理有更多的精力去做人力資源分析、研究和開(kāi)發(fā)工作,采用SQLServer作為開(kāi)發(fā)數(shù)據(jù)庫(kù)的工具。企業(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ù)存儲(chǔ) 14第三章概念設(shè)計(jì) 15聯(lián)系 15ER 5第四章邏輯設(shè)計(jì) 19概念模型向關(guān)系模型的轉(zhuǎn)換 19概念模型的優(yōu)化 201確定范式級(jí)別 202實(shí)施規(guī)范化處理 20第五章物理設(shè)計(jì) 22構(gòu) 22設(shè)計(jì) 22存取方法 24性 24第六章實(shí)現(xiàn)、運(yùn)行與維護(hù) 25 27界面 27 信息測(cè)試 29評(píng)價(jià)信息測(cè)試 29測(cè)試 30測(cè)試 31 總結(jié) 33 34 第一章系統(tǒng)規(guī)劃來(lái)很多方便,如檢索迅速,查找方便,可靠量大,保密性好,成本低等。可行性分析研究的目的是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定數(shù)據(jù)庫(kù)系統(tǒng)是否可能開(kāi)發(fā),是否值得開(kāi)發(fā)(在該報(bào)告中主要是考察《企業(yè)人事管理系統(tǒng)》是否可能開(kāi)發(fā),是否值得開(kāi)發(fā),是否可以開(kāi)發(fā))。其實(shí)質(zhì)是在較高層次上以較抽象的方式進(jìn)行的,簡(jiǎn)化的壓縮的需求分析和概要設(shè)計(jì)過(guò)程。企業(yè)人事管理系統(tǒng)建宏、王巾業(yè)可行性研究的前提1.2.1目標(biāo)人事管理系統(tǒng)用于支持企業(yè)完成人事管理工作,有如下三個(gè)方面的目標(biāo):2.支持企業(yè)高效率完成人事管理日常業(yè)務(wù),包括企業(yè)人事的增加、查詢、修改、刪除;進(jìn)行該系統(tǒng)的方案設(shè)計(jì)論證,需要實(shí)現(xiàn)以下功能:a.建立員工基本信息表,包括:?jiǎn)T工編號(hào)、姓名、部門(mén)、性別、出生日期、籍貫、職稱、進(jìn)入公司時(shí)間等;b考勤信息表,包括:?jiǎn)T工編號(hào)、姓名、日期、本月天數(shù)、出勤、曠工、早退、加班等;c、部門(mén)、業(yè)務(wù)水平、工作業(yè)績(jī)、時(shí)間、工作態(tài)度等;核、房租、實(shí)發(fā)工資等;管理系統(tǒng)必須提供部門(mén)信息、員工信息等基本信息,還必須提供強(qiáng)大的查、刪、改功能。可以分為不同權(quán)限、不同用戶的對(duì)該系統(tǒng)進(jìn)行操作。另外,該系統(tǒng)還必須保證數(shù)據(jù)的安全性、完整性和準(zhǔn)確性?;跀?shù)據(jù)庫(kù)的管理與查詢系統(tǒng)?,F(xiàn)在硬件、軟件的性能指標(biāo)和開(kāi)發(fā)我們掌握技術(shù)的熟練程度。本系統(tǒng)開(kāi)發(fā)設(shè)計(jì)中用到的技術(shù)因素有: (1)本系統(tǒng)開(kāi)發(fā)方法。在本小組中,小組成員比較熟練地掌握開(kāi)發(fā)信息系統(tǒng)的過(guò)程和技術(shù),在信息開(kāi)發(fā)方法上不存在太大的問(wèn)題。 (2)網(wǎng)絡(luò)和通信技術(shù)。因?yàn)樵诒镜乜蛻舳四M運(yùn)行的系統(tǒng),因此不需要配置和網(wǎng)絡(luò)。 (3)數(shù)據(jù)庫(kù)技術(shù)。小組成員具有應(yīng)用數(shù)據(jù)庫(kù)開(kāi)發(fā)小型信息系統(tǒng)的經(jīng)驗(yàn)。(4)Java開(kāi)發(fā)技術(shù)。小組成員需要熟練使用Java語(yǔ)言。綜上所述,本系統(tǒng)的開(kāi)發(fā)在技術(shù)上是可行的。APMServ5.2.0工具建立數(shù)據(jù)庫(kù),并通過(guò)eclipse使兩者進(jìn)行連接具有一定開(kāi)發(fā)經(jīng)驗(yàn)。據(jù)索數(shù)據(jù)速度快,效率高。三、數(shù)據(jù)應(yīng)用共享性好。由于對(duì)數(shù)據(jù)進(jìn)行集中管理,可以通過(guò)網(wǎng)絡(luò)等各種技術(shù),使得數(shù)據(jù)額應(yīng)用能夠共享,并且數(shù)據(jù)應(yīng)用的效率也高。庫(kù)技術(shù)認(rèn)識(shí)不足,導(dǎo)致設(shè)計(jì)出來(lái)的數(shù)據(jù)結(jié)構(gòu)或應(yīng)用程序往往存在各種各樣問(wèn)題,并因此造成在生產(chǎn)環(huán)境中,系統(tǒng)故障層出不窮,直接影響業(yè)務(wù)運(yùn)轉(zhuǎn)??蛯?duì)數(shù)據(jù)庫(kù)入侵,并盜取想要的資料。只需要一臺(tái)作為服務(wù)器的計(jì)算機(jī)就可以運(yùn)行,因此開(kāi)發(fā)費(fèi)用較低。的擴(kuò)展和網(wǎng)絡(luò)安全技術(shù)的不斷提高,用信表現(xiàn)出了巨大的經(jīng)濟(jì)價(jià)值。把人士管理系統(tǒng)納入公司內(nèi)部的Internet體系中去,理系統(tǒng)才能滿足這些要求。國(guó)作和工作方式符合工作人員和客戶的日常習(xí)慣,而且操作方便靈活,便于使用。因此,該系統(tǒng)具有可行性。經(jīng)過(guò)技術(shù)、經(jīng)濟(jì)、社會(huì)等方面的可行性分析,可以確定本系統(tǒng)的開(kāi)發(fā)完全必要。第二章需求分析系統(tǒng)需求方進(jìn)行操作。能需求本系統(tǒng)分為五個(gè)模塊:?jiǎn)T工基本信息、員工工作評(píng)價(jià)信息、員工考勤信息、信息、系統(tǒng)。得到如圖所示的系統(tǒng)功能模塊圖:據(jù)流圖1系統(tǒng)頂層圖數(shù)據(jù)流程圖一層分解圖價(jià)信息,員工工資信息數(shù)據(jù)流程圖二層分解圖數(shù)據(jù)流程圖三層分解圖員工工作評(píng)價(jià)數(shù)據(jù)流程圖四層分解圖員工考勤,查詢員工考勤數(shù)據(jù)流程圖五層分解圖員工工資,增加員工記錄,修改員工記錄,刪除員工記錄典系統(tǒng)數(shù)據(jù)庫(kù)表:位置:?jiǎn)T工員工編號(hào)+姓名+部門(mén)+性別+出生日期+籍貫+職稱+進(jìn)入公司:根據(jù)企業(yè)的員工具體錄用情況來(lái)確定的新員工進(jìn)行唯一編號(hào)位置:?jiǎn)T工息情況=員工編號(hào)+姓名+日期+本月天數(shù)+出勤+曠工+早退+:根據(jù)企業(yè)具體情況來(lái)確定行唯一編號(hào)位置:?jiǎn)T工定義:?jiǎn)T工工作評(píng)價(jià)情況=員工編號(hào)+姓名+部門(mén)+業(yè)務(wù)水平+工作業(yè)績(jī)+時(shí)間+度:根據(jù)企業(yè)具體情況來(lái)確定行唯一編號(hào)位置:?jiǎn)T工:根據(jù)企業(yè)具體情況來(lái)確定行唯一編號(hào)數(shù)據(jù)存儲(chǔ)確定數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)主要指確定數(shù)據(jù)的存放位置和存儲(chǔ)結(jié)構(gòu),包括確定關(guān)系、索引、日志、備份等的存儲(chǔ)安排及存儲(chǔ)結(jié)構(gòu),以及確定系統(tǒng)存儲(chǔ)參數(shù)的配置。表、索引等)分別放在不同的磁盤(pán),可以改進(jìn)系統(tǒng)的性第三章概念設(shè)計(jì)實(shí)體之間的聯(lián)系員工信息對(duì)應(yīng)一個(gè)部門(mén)信息,所以員工信息與部門(mén)信息之間是一對(duì)多的關(guān)系。將每一個(gè)實(shí)體轉(zhuǎn)換成一個(gè)關(guān)系(關(guān)系就是給出關(guān)系名,寫(xiě)出屬性,并標(biāo)明該關(guān)系的主碼)a.員工基本信息(員工編號(hào)、姓名、部門(mén)、性別、出生日期、籍貫、職稱、進(jìn)入公司時(shí)間)。在此聯(lián)系中主碼為員工編號(hào),因?yàn)閱T工信息與部門(mén)是多對(duì)一的聯(lián)系,所以將部門(mén)傳入員工基本信息中做非主屬性。b.員工考勤信息(員工編號(hào)、姓名、日期、本月天數(shù)、出勤、曠工、早退、加班)工作態(tài)度)d.員工工資信息(員工編號(hào)、姓名、時(shí)間、底薪、獎(jiǎng)金、扣考核、房租、實(shí)發(fā)工資)。3.2E-R圖第四章邏輯設(shè)計(jì)模型向關(guān)系模型的轉(zhuǎn)換其由概念模型向關(guān)系模型轉(zhuǎn)化,并且根據(jù)范式化理論進(jìn)行優(yōu)化。模型的優(yōu)化確定范式級(jí)別根據(jù)上述分析所歸結(jié)出來(lái)的數(shù)據(jù)依賴的種類和在本系統(tǒng)實(shí)際的開(kāi)發(fā)過(guò)程中,式應(yīng)達(dá)到BCNF。實(shí)施規(guī)范化處理的碼。對(duì)于實(shí)體間的聯(lián)系則有以下不同的情況:本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為各實(shí)體碼的組合。聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為n端實(shí)體的碼。式。碼的組合具有相同碼的關(guān)系模式可合并。第五章物理設(shè)計(jì)存儲(chǔ)結(jié)構(gòu)通過(guò)需求分析,概要設(shè)計(jì)和邏輯設(shè)計(jì)流程得到本系統(tǒng)的數(shù)據(jù)庫(kù)結(jié)構(gòu)。據(jù)庫(kù)的表設(shè)計(jì)進(jìn)一步確定上一章邏輯設(shè)計(jì)中設(shè)計(jì)好的關(guān)系模式中各個(gè)數(shù)據(jù)項(xiàng)的類型和長(zhǎng)到以下表結(jié)構(gòu):及長(zhǎng)度gidvarchar0)namedept部門(mén)varchar0)sexvarchar)birthdayplacevarchar0)levelvarchar0)date信息表及長(zhǎng)度idvarchar0)namevarchar0)datedays數(shù)varchar0)varchar0)absentvarchar0)earlyvarchar0)qovervarchar0)信息表及長(zhǎng)度pjidvarchar0)pjnamevarchar0)pjdept部門(mén)varchar0)pjlevelvarchar0)result績(jī)varchar0)pjdatevarchar0)pjposition度varchar0)pjothervarchar0)評(píng)價(jià)信息表及長(zhǎng)度varchar0)varchar0)varchar0)varchar0)varchar0)varchar0)agevarchar0)信息表系模式的存取方式索引。據(jù)庫(kù)安全性密要求:此系統(tǒng)可以分為用戶和管理員,用戶可以瀏覽自己的個(gè)人信管理系統(tǒng)的各種信息。技術(shù)完備、成熟,經(jīng)濟(jì)效益合理,滿足安全真實(shí)的企業(yè)人事管理信息系要求:第六章實(shí)現(xiàn)運(yùn)行與維護(hù)數(shù)據(jù)進(jìn)行程序調(diào)試。計(jì)戶登錄界面用戶名、密碼,以及確定用戶身份。其界面如下圖:登陸成功后的頁(yè)面:面信息視圖:評(píng)價(jià)視圖:視圖:視圖:系統(tǒng)視圖:試工基本信息測(cè)試ab.按員工編號(hào)查詢查找員工信息頁(yè)面:查詢結(jié)果:查找員工信息頁(yè)面:增加成功:結(jié)果顯示:b.修改員工信息修改成功:執(zhí)行操作:刪除成功:工工作評(píng)價(jià)測(cè)試員工考勤測(cè)試查詢結(jié)果:面員工工資測(cè)試面增加成功:結(jié)果顯示:b.修改工資記錄修改成功頁(yè)面:結(jié)果顯示:刪除成功:結(jié)果顯示:護(hù)或軟件開(kāi)發(fā)者協(xié)助系統(tǒng)管理員解決。設(shè)計(jì)的,可以很好地管理數(shù)據(jù)。重要的是我們還學(xué)到了很多可多課本上沒(méi)有的知識(shí)。那就是”團(tuán)結(jié)“”探索“和”支個(gè)人的力量什么也做不成,只有大家進(jìn)設(shè)計(jì)的老師和同學(xué)們之一深深的感謝。[3]《管理信息系統(tǒng)(第四版)》薛華成著清華大學(xué)出版社2005年主程序:importjavaawteventActionEvent;importjavaawteventActionListener;importjavautilVectorimportjavaxswingJFrameimportjavaxswingJMenuimportjavaxswingJMenuBarimportjavaxswingJMenuItemimportjavaxswingJOptionPaneimportjavaxswingJScrollPaneimportjavaxswingJTable/主界面,顯示表格數(shù)據(jù)/主界面上的菜單欄對(duì)象publicclassMainUI/主界面,顯示表格數(shù)據(jù)/主界面上的菜單欄對(duì)象privateJFramejf;privateJFramejFrame;privateJMenuBarjmb;privateJMenujm1,jm2,jm3,jm4,jm5;//五個(gè)菜單,分別為員工基本信息、員工工作評(píng)價(jià)、員工考勤、員工工資、系統(tǒng)privateJMenuItemjmxjmx2,jmx3,jmx4,jmx5,jmx6;//員工基本信息的菜單項(xiàng),分別為查詢所有員工、按,增加員工,修改員工,刪除員工privateJMenuItemjmp;//課程管理的菜單項(xiàng),分別為privateJMenuItemjmk1,jmk2;//選課管理的菜單項(xiàng),分別為rivateJMenuItemjmexitrivateJTablejtprivaterivateJMenuItemjmexitrivateJTablejtprivateJScrollPanejsp;//系統(tǒng)的菜單項(xiàng):退出//表格顯示組件//滾動(dòng)Pane,表格組件會(huì)用到privateVectorVectorString>rowData;//保存從數(shù)據(jù)庫(kù)中取得的二維表數(shù)據(jù),用表格組件顯示這些privateVector<String>singleRowData;//保存從數(shù)據(jù)庫(kù)中取得的單條記錄publicstaticvoidmain(String[]args){wMainUI}publicMainUI(){jf=newJFrame();//創(chuàng)建Framejmb=newJMenuBar();//以下代碼生成菜單欄、菜單、菜單項(xiàng)jm1=newJMenu("員工基本信息");jm2=newJMenu("員工工作評(píng)價(jià)");jm3=newJMenu("員工考勤");jm4=newJMenu("員工工資");jm5=newJMenu("系統(tǒng)");jmx1=newJMenuItem("查詢所有員工");jmx1.addActionListener(this);//增加事件監(jiān)聽(tīng)者jmx2=newJMenuItem("按員工編號(hào)查詢");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("查詢所有員工工作評(píng)價(jià)");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)");//下兩行把菜單項(xiàng)和菜單連接起來(lái)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);//把菜單和菜單欄連接起來(lái)rowDatanewVector<Vector<String>>();//初始化數(shù)據(jù)變量ngleRowDatanewVectorStringjf.setExtendedState(JFrame.MAXIMIZED_BOTH);//設(shè)定主界面最大化,并顯示它jf.setVisible(true);}publicvoidactionPerformedActionEvente){//事件處理方法,選擇菜單項(xiàng)會(huì)執(zhí)行此函數(shù)if(e.getSource()==jmexit)System.exit(0);//選擇“退出“菜單項(xiàng),執(zhí)行此語(yǔ)句if(e.getSource()==jmp)//選擇“查詢所有員工評(píng)價(jià)“菜單項(xiàng),執(zhí)行此語(yǔ)句{newPjAdmin().queryAll(rowData);//通過(guò)PjAdmin對(duì)象執(zhí)行queryAll方法查詢數(shù)據(jù)庫(kù),得到的數(shù)據(jù)放入rowData中this.displayWorkers1();//通過(guò)表格組件顯示數(shù)據(jù)}if(e.getSource()==jmk1)//選擇“查詢所有員工考勤“菜單項(xiàng),執(zhí)行此語(yǔ)句{newKqAdmin().queryAll(rowData);//通過(guò)KqAdmin對(duì)象執(zhí)行queryAll方法查詢數(shù)據(jù)庫(kù),得到的數(shù)據(jù)放入rowData中this.displayWorkers3();//通過(guò)表格組件顯示數(shù)據(jù)}if(e.getSource()==jmk2)//選擇“查詢員工缺勤“菜單項(xiàng),執(zhí)行此語(yǔ)句{newKqAdmin().queryAll(rowData);//通過(guò)KqAdmin對(duì)象執(zhí)行queryAll方法查詢數(shù)據(jù)庫(kù),得到的數(shù)據(jù)放入rowData中utDialog號(hào)newXxAdmin().queryByYgid(rowData,Ygid);//通過(guò)XxAdmin對(duì)象傳遞員工編號(hào)并查詢數(shù)據(jù)據(jù)放入rowData中this.displayWorkers3();//通過(guò)表格組件顯示數(shù)據(jù)}if(e.getSource()==jmg1)//選擇“查詢所有員工工資“菜單項(xiàng),執(zhí)行此語(yǔ)句{newGzAdmin().queryAll(rowData);//通過(guò)GzAdmin對(duì)象執(zhí)行queryAll方法查詢數(shù)據(jù)庫(kù),得到的數(shù)據(jù)放入rowData中this.displayWorkers2();}if(e.getSource()==jmg2){/通過(guò)表格組件顯示數(shù)據(jù)//選擇“增加員工工資記錄“菜單項(xiàng),執(zhí)行此if語(yǔ)句this.singleRowData.clear();//使用vector變量前,先清空newGzEditUI(jf,"增加工資記錄",true,singleRowData);//生成員工工資記錄編輯窗口,并取得新增員工工資數(shù)據(jù),放入存儲(chǔ)記錄的數(shù)據(jù)變量singleRowData中intrs=newGzAdmin().insert(singleRowData);//通過(guò)GzAdmin對(duì)象的insert方法向數(shù)據(jù)庫(kù)插入記錄if(rs>0)//判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功增加員工工資記錄!");elseJOptionPane.showMessageDialog(null,"增加員工工資記錄失??!");newGzAdminqueryAllrowData//通過(guò)GZAdmin對(duì)象執(zhí)行queryAll方法查詢數(shù)據(jù)庫(kù),得到的入rowData中this.displayWorkers2();//通過(guò)表格組件顯示數(shù)據(jù)}if(e.getSource()==jmg3){//選擇“修改員工工資記錄“菜單項(xiàng),執(zhí)行此if語(yǔ)句StringYgid=JOptionPane.showInputDialog("請(qǐng)輸入員工編號(hào):");//通過(guò)輸入對(duì)話框得到待修改員newGzAdmin().queryByYgid(rowData,Ygid);//通過(guò)GzAdmin對(duì)象傳遞學(xué)號(hào)并查詢數(shù)據(jù)庫(kù),數(shù)據(jù)放入rowData中newGzEditUIjf工工資記錄",true,rowData.get(0));//生成員工工資記錄編輯窗口,并傳入學(xué)生數(shù)據(jù),用戶編輯后再取回放入存儲(chǔ)記錄的數(shù)據(jù)變量中intrs=newGzAdmin().update(rowData.get(0));//通過(guò)GzAdmin對(duì)象的update方法向數(shù)據(jù)庫(kù)修改記錄,rowDataget0)表示單條記錄ifrs//判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功修改員工工資記錄!");elseJOptionPane.showMessageDialog(null,"修改員工工資記錄失??!");newGzAdminqueryAllrowData數(shù)據(jù)放入rowData中thisdisplayWorkers;}//通過(guò)GzAdmin對(duì)象執(zhí)行queryAll方法查詢數(shù)據(jù)庫(kù),/通過(guò)表格組件顯示數(shù)據(jù)if(e.getSource()==jmg4){//選擇“刪除員工工資記錄“菜單項(xiàng),執(zhí)行此if語(yǔ)句StringYgid=JOptionPane.showInputDialog("待刪除員工編號(hào):");//通過(guò)輸入對(duì)話框得到待刪除員號(hào)newGzAdminqueryByYgidrowDataYgid;//通過(guò)GzAdmin對(duì)象傳遞員工編號(hào)并查詢數(shù)據(jù)庫(kù),得rowData中newGzEditUIjf工工資記錄",true,rowData.get(0));//生成員工記錄編輯窗口,并傳入待修數(shù)據(jù),待用戶確認(rèn)待刪除數(shù)據(jù)intrsnewGzAdmin).delete(Ygid);錄值ifrs0)//通過(guò)GzAdmin對(duì)象的delete方法向數(shù)據(jù)庫(kù)刪除記錄,/判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功刪除員工工資記錄!");elseJOptionPane.showMessageDialog(null,"刪除員工記錄工資失??!");newGzAdminqueryAllrowDatarowData中thisdisplayWorkers;/通過(guò)GzAdmin對(duì)象執(zhí)行queryAll方法查詢數(shù)據(jù)庫(kù),得/通過(guò)表格組件顯示數(shù)據(jù)}if(e.getSource()==jmx1)//選擇“查詢所有員工“菜單項(xiàng),執(zhí)行此語(yǔ)句{newXxAdmin().queryAll(rowData);//通過(guò)XxAdmin對(duì)象執(zhí)行queryAll方法查詢數(shù)據(jù)庫(kù),得到的數(shù)據(jù)放入rowData中this.displayWorkers();//通過(guò)表格組件顯示數(shù)據(jù)}if(e.getSource()==jmx2){//選擇“按員工編號(hào)查詢員工“菜單項(xiàng),執(zhí)行此if語(yǔ)句StringYgid=JOptionPane.showInputDialog("請(qǐng)輸入員工編號(hào):");//通過(guò)輸入對(duì)話框得到待查詢員號(hào)newXxAdmin().queryByYgid(rowData,Ygid);//通過(guò)XxAdmin對(duì)象傳遞員工編號(hào)并查詢數(shù)據(jù)據(jù)放入rowData中thisdisplayWorkers//通過(guò)表格組件顯示數(shù)據(jù)}if(e.getSource()==jmx3){//選擇“按員工姓名查詢員工“菜單項(xiàng),執(zhí)行此if語(yǔ)句StringYgname=JOptionPane.showInputDialog("請(qǐng)輸入員工姓名:");//通過(guò)輸入對(duì)話框得到待查詢員工姓名newXxAdminqueryByYgnamerowDataYgname;//通過(guò)XxAdmin對(duì)象傳遞省份數(shù)據(jù)并查詢數(shù)得到的數(shù)據(jù)放入rowData中thisdisplayWorkers//通過(guò)表格組件顯示數(shù)據(jù)}if(e.getSource()==jmx4){//選擇“增加員工“菜單項(xiàng),執(zhí)行此if語(yǔ)句this.singleRowData.clear();//使用vector變量前,先清空newXxEditUI(jf,"增加員工記錄",true,singleRowData);//生成員工記錄編輯窗口,并取得新增員工數(shù)據(jù),放入存儲(chǔ)記錄的數(shù)據(jù)變量singleRowData中intrs=newXxAdmin().insert(singleRowData);//通過(guò)XxAdmin對(duì)象的insert方法向數(shù)據(jù)庫(kù)插入記錄if(rs>0)//判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功增加員工記錄!");elseJOptionPane.showMessageDialog(null,"增加員工記錄失??!");newXxAdminqueryAllrowData//通過(guò)XxAdmin對(duì)象執(zhí)行queryAll方法查詢數(shù)據(jù)庫(kù),得到的數(shù)rowData中this.displayWorkers();//通過(guò)表格組件顯示數(shù)據(jù)}if(e.getSource()==jmx5){//選擇“修改員工“菜單項(xiàng),執(zhí)行此if語(yǔ)句StringYgid=JOptionPane.showInputDialog("請(qǐng)輸入員工編號(hào):");//通過(guò)輸入對(duì)話框得到待修改員號(hào)newXxAdmin().queryByYgid(rowData,Ygid);//通過(guò)XxAdmin對(duì)象傳遞并查詢數(shù)據(jù)據(jù)放入rowData中newXxEditUIjf員工記錄",true,rowData.get(0));//生成員工記錄編輯窗口,并傳入待修改員,用戶編輯后再取回放入存儲(chǔ)記錄的數(shù)據(jù)變量中intrs=newXxAdmin().update(rowData.get(0));//通過(guò)XxAdmin對(duì)象的update方法向數(shù)據(jù)庫(kù)修改記錄,rowDataget0)表示單條記錄ifrs//判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功修改員工記錄!");elseJOptionPane.showMessageDialog(null,"修改員工記錄失??!");newXxAdminqueryAllrowData數(shù)據(jù)放入rowData中thisdisplayWorkers}//通過(guò)XxAdmin對(duì)象執(zhí)行queryAll方法查詢數(shù)據(jù)庫(kù),/通過(guò)表格組件顯示數(shù)據(jù)if(e.getSource()==jmx6){//選擇“刪除員工“菜單項(xiàng),執(zhí)行此if語(yǔ)句alog號(hào)newXxAdminqueryByYgidrowDataYgid;//通過(guò)XxAdmin對(duì)象傳遞員工號(hào)并查詢數(shù)據(jù)庫(kù),得到DatanewXxEditUIjf員工記錄",true,rowData.get(0));//生成員工記錄編輯窗口,并傳入待修改員,待用戶確認(rèn)待刪除數(shù)據(jù)intrsnewXxAdmin).delete(Ygid);號(hào)值ifrs0)//通過(guò)XxAdmin對(duì)象的delete方法向數(shù)據(jù)庫(kù)刪除記錄,/判斷是否插入操作成功,并顯示提示窗口JOptionPane.showMessageDialog(null,"成功刪除員工記錄!");elseJOptionPane.showMessageDialog(null,"刪除員工記錄失敗!");newXxAdminqueryAllrowDatarowData中thisdisplayWorkers}/通過(guò)XxAdmin對(duì)象執(zhí)行queryAll方法查詢數(shù)據(jù)庫(kù),得/通過(guò)表格組件顯示數(shù)據(jù)}publicvoiddisplayWorkers()//用表格組件jt顯示變量rowData的數(shù)據(jù),其中數(shù)據(jù)從數(shù)據(jù)庫(kù)中查詢得到{Vector<String>columns=newVector<String>();//表格表頭中的顯示數(shù)據(jù),6個(gè)列名存儲(chǔ)在向量中columns.add("員工編號(hào)");columns.add("員工姓名");columns.add("員工部門(mén)");columns.add("員工性別");columns.add("員工出生日期");columns.add("員工籍貫");columns.add("員工職稱");columns.add("入職日期");jt=newJTable(rowData,columns);//用表頭vector和數(shù)據(jù)庫(kù)中取得數(shù)據(jù)rowData來(lái)生成表格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ù)庫(kù)中查詢得到{Vector<String>columns=newVector<String>();//表格表頭中的顯示數(shù)據(jù),6個(gè)列名存儲(chǔ)在向量中columns.add("員工編號(hào)");columns.add("員工姓名");columns.add("評(píng)價(jià)部門(mén)");columns.add("業(yè)務(wù)水平");columns.add("工作業(yè)績(jī)");columns.add("時(shí)間");columns.add("工作態(tài)度");columns.add("其他");jt=newJTable(rowData,columns);//用表頭vector和數(shù)據(jù)庫(kù)中取得數(shù)據(jù)rowData來(lái)生成表格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ù)庫(kù)中查詢得到{Vector<String>columns=newVector<String>();//表格表頭中的顯示數(shù)據(jù),6個(gè)列名存儲(chǔ)在向量中columns.add("員工編號(hào)");columns.add("員工姓名");columns.add("工資日期");columns.add("員工底薪");columns.add("加班獎(jiǎng)金");columns.add("遲到扣除");columns.add("房租費(fèi)用");columns.add("實(shí)發(fā)工資");jt=newJTable(rowData,columns);//用表頭vector和數(shù)據(jù)庫(kù)中取得數(shù)據(jù)rowData來(lái)生成表格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ù)庫(kù)中查詢得到{Vector<String>columns=newVector<String>();//表格表頭中的顯示數(shù)據(jù),6個(gè)列名存儲(chǔ)在向量中columns.add("員工編號(hào)");columns.add("員工姓名");columns.add("考勤日期");columns.add("本月天數(shù)");columns.add("出勤");columns.add("缺勤");columns.add("早退");columns.add("加班");jt=newJTable(rowData,columns);//用表頭vector和數(shù)據(jù)庫(kù)中取得數(shù)據(jù)rowData來(lái)生成表格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ū)動(dòng)程序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ù)庫(kù)操作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ù)庫(kù)操作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ù)庫(kù)操作pstmt.setString(1,ygname);rs=pstmt.executeQuery();rsToRowData(rowData);}catch(Exceptionex){System.out.println(ex);}dbClose();}}員工評(píng)價(jià)信息程序: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ū)動(dòng)程序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ù)庫(kù)操作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ù)庫(kù)操作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. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 鋼管架承包合同書(shū)
- 環(huán)??萍紕?chuàng)新項(xiàng)目貸款合同
- 農(nóng)村衛(wèi)生健康管理方案
- 家庭智能設(shè)備采購(gòu)安裝及售后保障合同
- 工業(yè)用化學(xué)品買(mǎi)賣合同
- 關(guān)于推進(jìn)信息化建設(shè)的工作備忘錄
- 2025年幼兒教育新課件:《小小工程師》啟蒙教程
- 培訓(xùn)實(shí)施方案(30篇)
- 學(xué)生營(yíng)養(yǎng)餐工作總結(jié)
- 大學(xué)生印刷廠實(shí)習(xí)總結(jié)
- 雨污水工程施工組織設(shè)計(jì)方案
- sinamic變頻器家族cu250s-操作手冊(cè)
- 建筑垃圾回收利用統(tǒng)計(jì)臺(tái)賬
- 《不一樣的你我他》(完美)課件
- 新蘇教版科學(xué)六年級(jí)下冊(cè)全冊(cè)教案(含反思)
- 原油電脫鹽電脫水技術(shù)
- 國(guó)考斷面水站建設(shè)及運(yùn)維技術(shù)要求參考
- Q∕GDW 10799.7-2020 國(guó)家電網(wǎng)有限公司電力安全工作規(guī)程 第7部分:調(diào)相機(jī)部分
- 熱工學(xué)后題答案
- 不吸煙不喝酒課件
- 奧數(shù)知識(shí)點(diǎn) 間隔問(wèn)題
評(píng)論
0/150
提交評(píng)論