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

人事管理系統(tǒng)綜合設計報告.doc

  • 資源ID:9094799       資源大小:575.50KB        全文頁數:45頁
  • 資源格式: DOC        下載積分:9.9積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要9.9積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

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

人事管理系統(tǒng)綜合設計報告.doc

綜合課程設計題目: 人事管理系統(tǒng) 目錄第1章 課題關鍵技術21.1 B/S結構的數據訪問模式21.2 MyEclipse 簡介21.3 oracle數據庫簡介31.4 開發(fā)技術簡介3第2章 系統(tǒng)需求分析42.1 目標42.2 一般性需求42.3 功能簡介42.4 可行性分析52.5 軟硬件環(huán)境要求6第3章 系統(tǒng)總體設計63.1 系統(tǒng)總體架構73.2 功能模塊細分與設計83.2.1 部門管理模塊83.2.2 崗位管理模塊93.2.3 員工入職管理模塊103.2.4試用期員工管理模塊103.2.5 部門調動管理模塊113.2.6 崗位調動管理模塊12第4章 系統(tǒng)詳細設計1341 系統(tǒng)類設計134.1.1 實體類設計144.2 數據庫設計254.2.1 數據庫模型設計25第5章 源代碼設計275.1 對數據庫的操作的部分代碼275.3 數據庫的更新操作33第6章 系統(tǒng)測試416.1 黑盒測試和白盒測試416.2 測試準則426.3 白盒測試42第7章 結論43參考文獻44 第1章 課題關鍵技術1.1 B/S結構的數據訪問模式B/S(Browser/Server)結構,即瀏覽器/服務器模式,當前在web數據庫開發(fā)中應用較廣泛的一種模式,它是隨著Internet技術的興起,從傳統(tǒng)的二層C/S(客戶機/服務器)模式發(fā)展起來的新的網絡結構模式,其本質是三層結構C/S模式。在這種結構下,用戶工作界面是通過WWW瀏覽器來實現(xiàn),極少部分事務邏輯在前端(Browser)實現(xiàn)。但是主要事務邏輯在服務器端(Server)實現(xiàn),形成所謂三層結構。這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護與升級的成本和工作量,降低了用戶的總體成本,如圖1-1所示。圖1-1三級結構組成1.2 MyEclipse 簡介 本次系統(tǒng)開發(fā)所使用的前臺開發(fā)技術為Java,所使用的軟件為MyEclipse。Java是一種軟件技術,是一種由美國SUN計算機公司所研究而成的語言,是一種較為高級的編程語言。利用它可以在數據庫和J2EE的開發(fā)、發(fā)布,以及應用程序服務器的整合方面極大的提高工作效率。它是功能豐富的J2EE集成開發(fā)環(huán)境,包括了完備的編碼、調試、測試和發(fā)布功能,能夠支持HTML,Struts,JSP,CSS,Javascript,SQL。同時,MyEclipse10.0為用戶提供了高效、便捷的操作環(huán)境和友好的可視化操作界面。1.3 oracle數據庫簡介 Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關系數據庫管理系統(tǒng)。到目前仍在數據庫市場上占有主要份額。ORACLE 數據庫系統(tǒng)是美國ORACLE公司(甲骨文)提供的以分布式數據庫為核心的一組軟件產品,是目前最流行的客戶/服務器(CLIENT/SERVER)或B/S體系結構的數據庫之一。比如SilverStream就是基于數據庫的一種中間件。ORACLE數據庫是目前世界上使用最為廣泛的數據庫管理系統(tǒng),作為一個通用的數據庫系統(tǒng),它具有完整的數據管理功能;作為一個關系數據庫,它是一個完備關系的產品;作為分布式數據庫它實現(xiàn)了分布式處理功能。但它的所有知識,只要在一種機型上學習了ORACLE知識,便能在各種類型的機器上使用它。1.4 開發(fā)技術簡介JSP技術JSP(Java Server Pages)是由Sun Microsystems公司倡導、許多公司參與一起建立的一種動態(tài)網頁技術標準。 JSP技術是用JAVA語言作為腳本語言的,JSP網頁為整個服務器端的JAVA庫單元提供了一個接口來服務于HTTP的應用程序。JSP技術有點類似ASP技術,它是在傳統(tǒng)的網頁HTML文件中插入Java程序段和JSP標記,從而形成JSP網頁。所有程序操作都在服務器端運行,網絡上傳送給客戶端的僅是得到的結果,與客戶端的瀏覽器無關,因此,JSP稱這Server-side Language。所以被許多人認為是未來最有發(fā)展前途的動態(tài)網站技術之一。第2章 系統(tǒng)需求分析2.1 目標 本系統(tǒng)的總體目標是搭建用人單位的人事信息管理平臺,不僅滿足目前的業(yè)務需要,還要滿足公司的未來的發(fā)展,而且要具備良好的擴展性,形成公司未來人力資源管理信息化平臺。2.2 一般性需求 一、集中數據管理、分布式應用,實現(xiàn)信息的全面共享,為決策者提供最新的人力資源數據。 二、完全基于瀏覽器的操作模式,安裝簡單,操作方便,具有良好的系統(tǒng)擴展能力。 三、靈活的模塊需求設計。2.3 功能簡介 本次課設的標題為人事管理系統(tǒng),完成的是其中的部門管理模塊,其基本功能的分析如下:2.3.1 部門管理 部門管理主要實現(xiàn)了兩個模塊,一個是新建部門,這是一個必不可少的模塊,其他的操作均要根據部門的各種關聯(lián)來解決;一個是部門列表,在部門列表中可以根據不同的條件進行查詢,可以全部輸入,也可以部分輸入。在查詢出來的部門列表中,可以對部門進行操作,其操作有:修改-對部門除了部門編號以外的信息進行修改,查詢-對部門下的員工進行查詢,刪除-對部門進行刪除(其中若是該部門下有員工,則不能進行該操作)。2.3.2 崗位管理 崗位管理下有三個模塊,分別是:新建崗位,在該模塊下,可以建立一個新的崗位,其中每一個崗位都屬于其中的一個部門。崗位列表,在該模塊下可對崗位進行查詢,其中可以輸入全部條件進行查詢,也可以輸入部分內容進行查詢,在該查詢中,有可以進行如下操作:修改-對部門信息進行修改;崗位下員工信息-對該崗位下的員工進行查詢;刪除-讀崗位進行刪除。第三個模塊:崗位刪除-輸入崗位編號,刪除該崗位。2.3.3 員工入職管理 本模塊較為簡單。但也是相當重要的一塊。本模塊只有一個簡單的對個人數據進行插入2.3.4 試用期員工管理 本模塊中,點擊試用期員工查詢,進入查詢頁面,可以通過員工編號、員工姓名、試用期狀態(tài)、所在部門、所在崗位、開始日期、結束日期進行查詢。進入查詢后,查詢出來的表中可以進行“操作”的操作,本操作可以更改員工的試用期狀態(tài);正常、延期、不錄用、轉正操作。員工轉正查詢中可以根據員工編號、員工姓名、所在部門、所在崗位、開始日期、以及結束日期進行查詢員工的轉正員工。2.3.5 部門調動管理 部門調動模塊主要進行部門調動和已調動部門員工的查詢。部門調動中可以通過員工編號、員工名稱、部門編號、部門名稱進行查詢。查詢出信息后。選擇其中的單選按鈕,在點擊提交,進入了部門調動頁面,填入選項信息后可進行部門的調動??梢栽谝颜{動部門員工查詢中查詢出已經掉的部門的員工信息。2.3.6 崗位調動管理 崗位調動管理中可以進行崗位調動、已調動員工崗位查詢兩個操作;在崗位調動中,可以通過部門編號、部門名稱、員工編號、員工姓名之中的任意選項進行查詢;查詢出結果后可以進行別的操作,點擊崗位調動,進入了崗位調動操作頁面,頁面填入信息后進行崗位調動。崗位調動完后,通過在職員工查詢可以進行員工查詢。2.3.7 員工離職管理 員工離職管理中主要有離職辦理,離職員工信息查詢兩個模塊,離職辦理中,可進行離職,離職后的員工可以在離職員工信息查詢中進行查詢。2.4 可行性分析人事管理系統(tǒng)進行有效的可行性分析??尚行苑治鍪鞘澜缟掀毡椴捎玫囊环N研究工程項目是否可行的科學技術。主要是在系統(tǒng)調查的基礎上,針對新系統(tǒng)的開發(fā)是否具備必要性和可能性的一種分析和研究,主要會從經濟、技術、社會的方面來進行分析和研究,以減少項目開發(fā)風險,避免人力、物力和財力的浪費。新系統(tǒng)的目標確定后,就可以從以下三方面對能否實現(xiàn)新系統(tǒng)目標進行可行性分析: (1)技術可行性。根據新系統(tǒng)目標來衡量所需的技術是否具備,一般可從硬件、軟件的性能要求、環(huán)境條件、技術人員水平和數量等方面去考慮和分析,其中開發(fā)人員的技術力量應首先考慮能力與水平,并考慮近期內可以培養(yǎng)和發(fā)展的技術人員。(2)運行可行性。本系統(tǒng)具有操作簡單。系統(tǒng)功能、顯示內容簡單明了。操作者不必具有較高的計算機專業(yè)知識,也不必進行專門培訓,只要經過短時間的操作就可以很快掌握并熟練使用。2.5 軟硬件環(huán)境要求軟件要求:l 版本控制:SVN-1.7.4l 數據庫:oracle IDE:MyEclipse 10.0 系統(tǒng)平臺:win7l 瀏覽器:IE瀏覽器l JDK:1.6版本以上l 中間件: Tomcat 6.0硬件要求:CPU Intel586/50MHZ或更高、內存在512MB或更高。第3章 系統(tǒng)總體設計3.1 系統(tǒng)總體架構 系統(tǒng)采用 MVC3三層架構,在C層對用servlet實現(xiàn)對用戶的請求,再去調用service中DAO的借口實現(xiàn)對數據庫中的操作,數據庫是 oracle。人事管理系統(tǒng) 登錄框員工入職管理崗位管理部門管理員工離職管理崗位調動管理部門調動管理試用期員工管理 人事管理系統(tǒng)的整體結構、功能模塊MVC 架構 即模型,視圖,控制器。 Model 實現(xiàn)系統(tǒng)的業(yè)務邏輯,表示企業(yè)數據和業(yè)務規(guī)則,通常對應著一些和數據庫表映射的實體類和實現(xiàn)業(yè)務邏輯的方法。 View 層只負責界面的展示,對jsp文檔。 Controller 層是Model與View之間溝通的橋梁,它可以分派用戶的請求并選擇恰當的視圖以呈現(xiàn),同時它也可以解釋用戶的輸入并將它們映射為模型層可執(zhí)行的操作。MVC中所有的用戶請求都由 Controller 中的 Servlet 來處理,Servlet根據請求會從 View 層得到用戶的輸入,轉換為對應的 Model 對象,然后把 Model 對象寫入數據庫進行數據持久化。相反 Controller 也負責從數據庫中取出數據,封轉成Model 對象,然后把Model 對象傳到 View 進行顯示。由于 MVC 的分層,模塊之間的耦合性降低。視圖層和業(yè)務層分離,這樣就允許更改視圖層代碼而不用重新編譯模型和控制器代碼,同樣,一個應用的業(yè)務流程或者業(yè)務規(guī)則的改變只需要改動MVC的模型層即可。因為模型與控制器和視圖相分離,所以很容易改變應用程序的數據層和業(yè)務規(guī)則。 本系統(tǒng)是完全基于MVC三層架構完成。3.2 功能模塊細分與設計在這一部分,我們將各個子系統(tǒng)模塊進一步劃分子模塊,劃分的子模塊與各個模塊功能說明如下。3.2.1 部門管理模塊部門管理模塊主要包括新建部門、查詢部門。如圖所示:部門管理部門管理查詢部門新建部門模塊主要功能如下:(1) 新建部門,新建一個部門。(2) 查詢部門,查詢有哪些部門。用戶新建部門部門列表部門管理3.2.2 崗位管理模塊 崗位管理模塊主要包括新建崗位、崗位列表、崗位刪除。如圖 所示: 崗位管理新建崗位崗位列表崗位刪除崗位管理模塊用例新建崗位崗位列表崗位管理崗位刪除模塊主要功能如下:(1)新建崗位,建立一個新的崗位。(2)崗位列表,可以查詢出各個崗位。(3)崗位刪除,刪除一個崗位。3.2.3 員工入職管理模塊 員工入職用于錄入員工信息模塊主要功能如下:(1) 錄入員工信息3.2.4試用期員工管理模塊試用期員工管理模塊主要用于對試用期員工的操作。如圖所示: 試用期員工管理試用期員工查詢轉正員工查詢試用期員工管理模塊用例試用期員工查詢試用期管理轉正員工查詢 模塊主要功能如下:(1) 試用期員工查詢,主要用于查看試用期的員工。(2) 轉正員工查詢,主要用于查詢轉正的員工。3.2.5 部門調動管理模塊 部門調動管理模塊主要進行部門調動和已調動部門員工查詢。如圖所示:部門調動管理已調動部門員工查詢部門調動部門調動管理用例部門調動部門調動調動員工查詢模塊主要功能如下:() 部門調動,對員工的部門進行更改。() 已調動部門員工查詢,對已經調動部門的員工進行查詢。3.2.6 崗位調動管理模塊崗位調動管理 崗位調動管理主要進行崗位調動和已調動崗位員工查詢。如圖 3-8所示崗位調動已調動崗位員工查詢崗位調動模塊用例崗位調動崗位調動已調動崗位的員工查詢模塊主要功能如下:() 崗位調動,對員工進行崗位改變。() 已調動員工查詢,對調動崗位的員工進行查詢。第4章 系統(tǒng)詳細設計詳細設計階段的任務就是把在總體設計階段提出的比較抽象概括的解決問題的方法具體化,也就是“應該怎樣具體地實現(xiàn)這個系統(tǒng)”。程序員可以根據詳細設計進行代碼的編寫。在本階段將包括系統(tǒng)的類設計和數據庫的設計,確定實現(xiàn)模塊功能所需要的算法和數據結構。41 系統(tǒng)類設計 系統(tǒng)的類設計是根據系統(tǒng)的用例圖和總體設計時對系統(tǒng)的分析,抽象出系統(tǒng)的實體類,由業(yè)務邏輯抽象出一些處理系統(tǒng)業(yè)務邏輯的類包括一些數據結構和算法類,并進行數據的持久化。程序員可以根據類圖進行編碼實現(xiàn)系統(tǒng)的功能。4.1.1 實體類設計根據前面的分析需要我們抽象出了系統(tǒng)的實體類,這些實體類都需要進行持久化,它們和數據庫中的表存在映射關系,為數據庫表的設計提供了依據,實體類圖如圖 4-1 所示: 4.2 數據庫設計4.2.1 數據庫模型設計重要的部分數據庫表的建設崗位表 (createdepartment)屬性類型說明deptnovarchar(22)部門編號在22以內,為主鍵dnamevarchar(22)部門名稱小于22位dstylevarchar(22)部門還是公司phonenumbervarchar(22)電話號碼builddatevarchar(22)建立日期員工信息(checkin)屬性類型說明useridvarchar(22)員工編號usernamevarchar(22)員工姓名sexvarchar(22)性別borndatevarchar(22)出生日期idcardvarchar(22)編號deptnovarchar(22)部門號pidvarchar(22)崗位idedtrydatevarchar(22)入職日期workdatevarchar(22)工作日期typevarchar(22)類型hirefromvarchar(22)離職yearbeginvarchar(22)開始yearendvarchar(22)結束politicvarchar(22)黨員還是其他nationvarchar(22)出生地hometownvarchar(22)家鄉(xiāng)emailvarchar(22)電子郵件heightvarchar(22)身高bloodvarchar(22)血型xueweivarchar(22)學位craduateschoolvarchar(22)畢業(yè)學校professionvarchar(22)教授craduatetimevarchar(22)畢業(yè)時間workvarchar(22)工作workredayvarchar(22)工作日期marriagevarchar(22)是否結婚psm(崗位管理)屬性類型pidvarchar(22)pnovarchar(22)pnamevarchar(22)pstylevarchar(22)pmaxvarchar(22)varchar(22)firetable(離職表)屬性類型idVarchar2(33)nameVarchar2(33)jobVarchar2(33)jobtypeVarchar2(33)partVarchar2(33)yearVarchar2(33)prikeyVarchar2(33)account(登錄表)屬性類型usernamevarchar(20)passworvarchar(20)第5章 源代碼設計在完成需求分析、總體設計、詳細設計的幾個步驟、完成系統(tǒng)類圖后接下來我們就可以編碼實現(xiàn)了。在編碼的階段發(fā)現(xiàn)當員工的字段較多的時候,當從頁面上傳值,從request去取這些值的時候會有很多的get和set語句。在M層的BO和層的DTO進行數據轉化的時候會出現(xiàn)很多類似的代碼,在對數據庫進行操作的時候也會出現(xiàn)這樣的情況。對此就啟發(fā)了我們是否能對此優(yōu)化。經過反復的思考,利用反射機制,將這些操作都得以實現(xiàn),提高代碼的重用度,讓程序看起來更加優(yōu)雅,也具有相當的靈活性。5.1 對數據庫的操作的部分代碼package com.psm.model.dao;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Set;import com.psm.model.dept.bo.DeptBo;import com.psm.model.dept.bo.DeptCheckin;public class DeptDao Connection conn; public DeptDao(Connection conn) this.conn = conn; public DeptDao() /* * 修改部門 */ public boolean alert(DeptBo user)throws SQLException boolean flag = false; if(user.getDeptno()!=null && ""!=user.getDeptno() PreparedStatement ps = conn.prepareStatement("update createdepartment set dname = ? ,dstyle = ?,phonenumber = ? ,builddate = ? where deptno = ?"); ps.setString(1,user.getDname() ); ps.setString(2, user.getDstyle(); ps.setString(3, user.getPhoneNumber(); ps.setString(4, user.getBuilddate(); ps.setString(5, user.getDeptno(); ps.executeUpdate(); ps.close(); flag = true; else flag = false; return flag; /* * 刪除一個部門 */ public void deptdel(String deptno)throws SQLException PreparedStatement ps = conn.prepareStatement("delete from createdepartment where deptno=? "); ps.setString(1, deptno); ps.executeUpdate(); ps.clearBatch(); /* * 新建一個部門時向數據庫中插入一個新的部門 */ public void insert(DeptBo user)throws SQLException PreparedStatement ps = conn.prepareStatement("insert into createdepartment values(?,?,?,?,?)"); ps.setString(1, user.getDeptno(); ps.setString(2,user.getDname() ); ps.setString(3, user.getDstyle(); ps.setString(4, user.getPhoneNumber(); ps.setString(5, user.getBuilddate(); int i=ps.executeUpdate(); ps.close(); /* * 查詢一個部門的全部員工 */ public List inquiry(String deptno)throws SQLException List list = new ArrayList(); System.out.println("33"); PreparedStatement ps = conn.prepareStatement("select userid,username,sex,deptno,type from checkin where deptno = ?"); ps.setString(1, deptno); ResultSet rs = ps.executeQuery(); while(rs.next() DeptCheckin dc = new DeptCheckin(); dc.setDeptno(rs.getString("deptno"); dc.setSex(rs.getString("sex"); dc.setType(rs.getString("type"); dc.setUserid(rs.getString("userid"); dc.setUsername(rs.getString("username"); list.add(dc); System.out.println("44"); System.out.println(list); return list; /* * * param deptno * return * throws SQLException */ public List checkup(String deptno)throws SQLException List list = new ArrayList(); PreparedStatement ps = conn.prepareStatement("select deptno,dname,dstyle,phoneNumber,builddate from createdepartment where deptno = ? "); ps.setString(1, deptno); ResultSet rs = ps.executeQuery(); while(rs.next() DeptBo usercreate = new DeptBo(); usercreate.setDeptno(rs.getString("deptno"); usercreate.setDname(rs.getString("dname"); usercreate.setPhoneNumber(rs.getString("phoneNumber"); usercreate.setDstyle(rs.getString("dstyle"); usercreate.setBuilddate(rs.getString("builddate"); list.add(usercreate); return list; return null; /* * 根據 編號 和 名稱 以及部門查找部門信息 */ public List lookup(HashMap has)throws SQLException List list = new ArrayList(); String s = "" Set keys = has.keySet(); Iterator it = keys.iterator(); System.out.println("ssssssssss lookup"); while(it.hasNext() String keyName = (String)it.next(); String value = (String)has.get(keyName); if(!value.equals("") && value!=null) s=s+keyName+" = "+""+value+""+" "+"and " System.out.println(s); s=s.substring(0,s.length()- 4); String sql = "select deptno,dname,dstyle,phoneNumber,builddate from createdepartment where " + s ; PreparedStatement ps = conn.prepareStatement(sql); ResultSet rs = ps.executeQuery(); while(rs.next() DeptBo usercreate = new DeptBo(); usercreate.setDeptno(rs.getString("deptno"); usercreate.setDname(rs.getString("dname"); usercreate.setPhoneNumber(rs.getString("phoneNumber"); usercreate.setDstyle(rs.getString("dstyle"); usercreate.setBuilddate(rs.getString("builddate"); list.add(usercreate); return list; service的核心代碼public boolean registerSuccess(String uname, String upass, String uemail,String image) boolean flag=false;Session session=sessionFactory.openSession();Transaction tx=session.beginTransaction();User user=new User();user.setUname(uname);user.setUpass(upass);user.setUemail(uemail);user.setImage(image);Serializable seria=session.save(user);if (seria!=null) flag=true;tx.commit();session.close();return flag;5.3 數據庫的更新操作package com.psm.model.dept.service;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import com.psm.ctrl.dept.dto.DeptCheckinDto;import com.psm.ctrl.dept.dto.DeptDto;import com.psm.model.dao.DeptDao;import com.psm.model.dept.bo.DeptBo;import com.psm.model.dept.bo.DeptCheckin;public class DepartmentService private DeptDao userdao; private Connection conn; /* * 進行數據庫連接 */ public DepartmentService() try Class.forName("oracle.jdbc.driver.OracleDriver"); catch (ClassNotFoundException e) e.printStackTrace(); try conn=DriverManager.getConnection("jdbc:oracle:thin:localhost:1521:orcl","scott","tiger"); catch (SQLException e) e.printStackTrace(); userdao = new DeptDao(conn); /* * 刪除部門 */ public boolean delservice(String deptno) System.out.println("2"); boolean flag = false; List list;try list = userdao.inquiry(deptno); if( list.size()=0) try System.out.println("3"); conn.setAutoCommit(false);userdao.deptdel(deptno);conn.commit();flag = true; catch (SQLException e) e.printStackTrace(); else try conn.rollback(); catch (SQLException e) e.printStackTrace(); flag = false; catch (SQLException e1) e1.printStackTrace(); return flag; /* * 查詢部門員工 */ public List inquiryemploy(String deptno) List list = new ArrayList(); try List li = userdao.inquiry(deptno);if(null!=li && !li.isEmpty()Iterator it = li.iterator();while(it.hasNext()DeptCheckinDto dpdto = new DeptCheckinDto();DeptCheckin bo = (DeptCheckin) it.next();dpdto.setDeptno(bo.getDeptno();dpdto.setSex(bo.getSex();dpdto.setType(bo.getType();dpdto.setUserid(bo.getUserid();dpdto.setUsername(bo.getUsername();list.add(dpdto);System.out.println(list); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace(); return list; /* * 判斷是否已經存在了一個部門 */ public boolean checkdp(DeptDto dto) /List list1 = new ArrayList(); String number = dto.getDeptno(); try List list = userdao.checkup(number);if(null=list | list.isEmpty() catch (SQLException e) e.printStackTrace();return true; /* * 修改部門 */ public boolean alertinfo(DeptDto userdto) boolean flaga =true; DeptBo ucreate = new DeptBo(); ucreate.setDeptno(userdto.getDeptno(); ucreate.setDname(userdto.getDname(); ucreate.setDstyle(userdto.getDstyle(); ucreate.setPhoneNumber(userdto.getPhoneNumber(); ucreate.setBuilddate(userdto.getBuilddate(); try boolean b = userdao.alert(ucreate); conn.setAutoCommit(false);if(b = true) conn.commit(); flaga = true;elseflaga = false;conn.rollback(); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();System.out.println("5");return flaga; /* * 創(chuàng)建一個新部門 */ public boolean insertInto(DeptDto userdto) boolean flaga =false; DeptBo ucreate = new DeptBo(); ucreate.setDeptno(userdto.getDeptno(); ucreate.setDname(userdto.getDname(); ucreate.setDstyle(userdto.getDstyle(); ucreate.setPhoneNumber(userdto.getPhoneNumber(); ucreate.setBuilddate(userdto.getBuilddate(); try boolean flag =checkdp(userdto);if(flag=true) conn.setAutoCommit(false); userdao.insert(ucreate); conn.commit(); flaga = true;elseflaga = false; catch (SQLException e) e.printStackTrace();try conn.rollback(); catch (SQLException e1) e1.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return flaga; private boolean check(DeptDto userdto) / TODO Auto-generated method stubreturn false;/* * 取得查詢信息 */ public List getPartment(HashMap has) List listdto = new ArrayList(); List listdao = null ; System.out.println("&&&&&&&&&7777"); try listdao = (List)userdao.lookup(has); if(null!=listdao && !listdao.isEmpty() Iterator it = listdao.iterator();while(it.hasNext()DeptDto ucdto = new DeptDto();DeptBo udao = (DeptBo)it.next();ucdto.setDeptno(udao.getDeptno();ucdto.setDname(udao.getDname();ucdto.setPhoneNumber(udao.getPhoneNumber();ucdto.setDstyle(udao.getDstyle();ucdto.setBuilddate(udao.getBuilddate();listdto.add(ucdto); catch (SQLException e) e.printStackTrace();finally try conn.close(); catch (SQLException e) e.printStackTrace();/return listReturn;return listdto; 第6章 系統(tǒng)測試測試是為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行軟件的過程,成功的測試是發(fā)現(xiàn)了至今尚未發(fā)現(xiàn)的錯誤。系統(tǒng)在發(fā)布之前要經過嚴格的測試過程,QA 要對軟件的功能、性能等方面進行全面的測試,測試人員不僅要發(fā)現(xiàn) bug 而且要確保發(fā)現(xiàn)的 bug 被正確修復。開發(fā)人員要寫單元測試,保證自己寫的每一個方法都是正確的,還要測試代碼的覆蓋率保證測試用例能夠覆蓋盡可能多的路徑和代碼。測試是為了保證軟件的質量,軟件質量需要由開發(fā)人員和測試人員共同保障,測試在軟件生命周期中扮演者非常重要的角色,測試介入的越早越好,最好從需求階段就開始介入,這就是通常所說的雙 V 模型,小的系統(tǒng)自己測試一下就行了,但是大的項目必須經過嚴格的測試過程才能發(fā)布,這樣軟件的質量才能得到保障,項目才能夠取得成功。6.1 黑盒測試和白盒測試對于軟件測試而言,黑盒測試法把程序看成一個黑盒子,完全不考慮程序的內部結構和處理過程。也就是說,黑盒測試是在程序接口進行的測試,它只檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用,程序是否能適當地接收輸入數據產生正確的輸出信息,并且保持外部信息的完整性。黑盒測試又成為功能測試。與黑盒測試法相反,白盒測試法的前提是可以把程序看成裝在一個透明的白盒子里,也就是完全了解程序的結構和處理過程。白盒測試又稱結構測試。6.2 測試準則為了能設計出有效的測試方案,軟件工程師必須充分理解并正確運用指導軟件測試的基本準則。主要的測試準則如下:1. 所有的測試都應該能追溯到用戶需求;2. 應該在測試開始之前的相當長時間就制定出測試計

注意事項

本文(人事管理系統(tǒng)綜合設計報告.doc)為本站會員(jian****018)主動上傳,裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對上載內容本身不做任何修改或編輯。 若此文所含內容侵犯了您的版權或隱私,請立即通知裝配圖網(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網速或其他原因下載失敗請重新下載,重復下載不扣分。




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

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

備案號:ICP2024067431-1 川公網安備51140202000466號


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