軟件畢業(yè)設計--人事管理系統(tǒng)_第1頁
已閱讀1頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  南京信息職業(yè)技術學院</p><p><b>  畢業(yè)設計論文</b></p><p>  作者 學號 </p><p>  系部 計算機與軟件學院 </p><p>  專業(yè) 軟件技術(測試)(校企合作) &l

2、t;/p><p>  題目 人事管理系統(tǒng) </p><p>  指導教師 </p><p>  評閱教師 </p><p>  完成時間: 2013 年 4 月 30 日</p&g

3、t;<p>  畢業(yè)設計(論文)中文摘要</p><p>  畢業(yè)設計(論文)外文摘要</p><p><b>  目錄</b></p><p><b>  1 引言1</b></p><p>  1.1 課題研究背景1</p><p>  1.2 課題

4、研究目的2</p><p><b>  2需求分析2</b></p><p>  2.1可行性分析2</p><p>  2.2 系統(tǒng)功能需求3</p><p>  2.3 模塊劃分3</p><p><b>  2.4性能需求4</b></p>

5、<p><b>  3概要設計4</b></p><p>  3.1系統(tǒng)開發(fā)環(huán)境4</p><p>  3.2 JDK 1.6 和 Tomcat 7.0 服務器配置4</p><p>  3.3 系統(tǒng)結構圖和流程圖5</p><p>  3.4 數(shù)據(jù)庫設計6</p><p&

6、gt;<b>  4 詳細設計9</b></p><p>  4.1 登錄界面設計9</p><p>  4.2 部門管理模塊設計9</p><p>  4.3 職工管理模塊設計12</p><p>  4.4 事務管理設計16</p><p>  4.5 工資管理模塊設計

7、18</p><p>  5 系統(tǒng)調(diào)試與測試19</p><p>  5.1 程序調(diào)試19</p><p>  5.2 程序測試19</p><p><b>  結論21</b></p><p><b>  致謝22</b></p><p&

8、gt;<b>  參考文獻22</b></p><p><b>  引言</b></p><p>  二十一世紀,人類已經(jīng)邁入信息時代,以計算機技術、通信技術和網(wǎng)絡技術為代表的現(xiàn)代信息技術飛躍發(fā)展,人們越來越重視信息資源的開發(fā)和利用,“信息化”已成為一個國家經(jīng)濟和社會發(fā)展的關鍵環(huán)節(jié),信息化水平的高低已成為衡量一個國家現(xiàn)代化水平和綜合國力的重要標

9、志。信息化的實質(zhì)是使信息這一社會的主要資源充分發(fā)揮作用,可以說,推廣信息技術是手段,利用信息才是真正的目的,信息化則是實現(xiàn)目的的過程。我國自1983年大力推廣微型計算機應用以來,在管理信息領域,無論在理論方面,還是在實踐方面都有了很大的發(fā)展。</p><p>  1.1 課題研究背景</p><p>  人事管理系統(tǒng)的發(fā)展歷史可以追溯到20世紀60年代末期。由于當時計算機技術已經(jīng)進入實用

10、階段,同時大型企業(yè)用手工來計算和發(fā)放薪資既費時費力又非 常容易出差錯,為了解決這個矛盾,第一代的人事管理系統(tǒng)應運而生。當時由于 技術條件和需求的限制,用戶非常少,而且那種系統(tǒng)充其量也只不過是一種自動 計算薪資的工具,既不包含非財務的信息,也不包含薪資的歷史信息,幾乎沒有 報表生成功能和薪資數(shù)據(jù)分析功能。但是,它的出現(xiàn)為人事管理的管理展示了美 好的前景,即用計算機的高速度和自動化來替代手工的巨大工作量,用計算機的高準確性來避免手工的錯誤和

11、誤差,使大規(guī)模集中處理大型企業(yè)的薪資成為可能。第二代的人事管理系統(tǒng)出現(xiàn)于20世紀70年代末。由于計算機技術的飛速發(fā)展,無論是計算機的普及性,還是計算機系統(tǒng)工具和數(shù)據(jù)庫技術的發(fā)展,都為人事管理系統(tǒng)的發(fā)展提供了可能。第二代人事管理系統(tǒng)基本上解決了第一代系統(tǒng)的主要缺陷,對非財務的人事管理信息和薪資的歷史信息都給予了考慮,其報表生成和薪資數(shù)據(jù)分析功能也都有了較大的改善。但這一代的系統(tǒng)主要是由計算機 專業(yè)人員開發(fā)研制的,未能系統(tǒng)地考慮人事管理的需

12、求和理念,而且其非財務的 人事管理信</p><p>  1.2 課題研究目的</p><p>  隨著網(wǎng)絡技術的發(fā)展,傳統(tǒng)的人工管理模式因其效率低、保密性差、數(shù)據(jù)量大、查詢不便等缺點已經(jīng)不能適應企業(yè)的發(fā)展。但人事管理系統(tǒng)又是一個企業(yè)不可缺少的部分,所以一個好的人事管理系統(tǒng)會給企業(yè)管理帶來極大的便利?;?WEB 模式的人事管理系統(tǒng)適應了當前發(fā)展的潮流。使用計算機對人事信息進行管理,具有

13、手工管理所無法比擬的優(yōu)點。例如:檢索迅速、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高人事勞資管理的效率,也是企業(yè)實現(xiàn)科學化、正規(guī)化管理,與世界接軌的必要條件。本課題的目的是:針對企事業(yè)對人事管理的需求,開發(fā)一個人事管理系統(tǒng),力求方便快捷地實現(xiàn)人事信息的管理,推動企業(yè)向前發(fā)展。</p><p><b>  2需求分析</b></p><p>

14、<b>  2.1可行性分析</b></p><p>  可行性分析是通過對系統(tǒng)目標的初步調(diào)研和分析,提出可行性方案并進行論證地過程。我在這里主要從技術可行性、經(jīng)濟可行性和運行可行性等方面進行分析。</p><p>  2.1.1 經(jīng)濟可行性</p><p>  開發(fā)該系統(tǒng)所需的相關資料可以通過已存在的相關系統(tǒng)進行調(diào)查采集,所需 的其他應用軟件

15、、硬件系統(tǒng)也易于獲得。因此,開發(fā)成本較低。而引進使用本系統(tǒng)后,與傳統(tǒng)方式相比,具有高效率、低成本、高質(zhì)量的特點,可以節(jié)省不少人力、物力及財力。所以,從經(jīng)濟的角度來看該系統(tǒng)可行。</p><p>  2.1.2技術可行性</p><p>  技術可行性是要看現(xiàn)有的技術條件是否能夠順利完成開發(fā)工作,軟硬件配 置是否滿足開發(fā)的需求等。本系統(tǒng)用的是 JSP+JAVA 開發(fā)語言,當前的計算機硬 件配

16、置也完全能滿足開發(fā)的需求,因此在技術上是絕對可行的。軟件方面:由于目前單機模式相對發(fā)展成熟,故軟件的開發(fā)平臺成熟可行,它們速度快、容量大、可靠性能高、價格低,完全能滿足系統(tǒng)的需求。</p><p>  2.1.3.運行可行性</p><p>  運行可行性是指新系統(tǒng)對企業(yè)組織結構的影響,以及現(xiàn)有人員、機構和環(huán)境對系統(tǒng)的適應性,人員培訓補充計劃的可行性。當前信息化技術已經(jīng)相當普及,各類人員操

17、作水平都有相當?shù)母叨?,所以在運行上是可行性的。</p><p>  2.2 系統(tǒng)功能需求</p><p>  隨著企業(yè)規(guī)模的進一步擴大,企業(yè)職工的數(shù)量越來越多,管理制度也越來越嚴密復雜,傳統(tǒng)的人工管理方式或 C/S 架構的管理軟件的缺陷逐漸顯露出來。為了提高企業(yè)人事管理系統(tǒng)的效率和正確性,方便職工對個人基本信息的查詢,同時也為了降低管理系統(tǒng)的維護費用,決定開發(fā)基于 B/S 的人事管理系統(tǒng)

18、。</p><p><b>  2.3 模塊劃分</b></p><p>  基于系統(tǒng)需求分析,該人事管理系統(tǒng)實現(xiàn)下面的功能:</p><p><b>  員工信息管理</b></p><p>  實現(xiàn)員工信息的查詢與添加。員工查詢條件分員工姓名和員工編號兩類,能夠查詢的基本信息為員工姓名、員工編

19、號以及所屬部門。添加新員工包含員工的詳細信息,如姓名、性別、民族、政治面貌,出生日期、部門、職務、聯(lián)系電話等等。</p><p><b>  工資管理</b></p><p>  工資管理主要實現(xiàn)員工工資查詢,查詢條件含月份、員工姓名、員工編號、所在部門、開戶銀行以及給薪時間等信息。</p><p><b>  部門設置</b&

20、gt;</p><p>  部門設置實現(xiàn)現(xiàn)所有部門的信息顯示和部門管理。部門管理可實現(xiàn)對現(xiàn)有部門的刪除、修改功能,也可實現(xiàn)部門的新增功能。</p><p><b>  用戶管理</b></p><p>  用戶管理主要實現(xiàn)對當前登錄用戶的個人信息進行修改。</p><p><b>  員工培訓管理</b&

21、gt;</p><p>  包括培訓人員信息、所參加的培訓項目、培訓時間、日期、地點等信息。</p><p><b>  考勤管理</b></p><p>  記錄了員工曠工、加班和遲到等信息。</p><p><b>  附加功能</b></p><p>  實現(xiàn)從exce

22、l表格中讀取信息到數(shù)據(jù)庫。</p><p><b>  2.4性能需求</b></p><p>  由于本項目針對企業(yè)單位,所以將項目發(fā)布到服務器上之后,公司所有員工均可以進行登錄,查看公共信息,也可以修改個人信息。為防止對信息資料和管理程序的惡意破壞,要求有較為可靠的安全性能。總之,要求系統(tǒng)穩(wěn)定、安全、操作便捷、易管理。員工的登錄信息由管理員統(tǒng)一進行管理,所以暫時不

23、實現(xiàn)用戶注冊的功能。</p><p><b>  3概要設計</b></p><p><b>  3.1系統(tǒng)開發(fā)環(huán)境</b></p><p> ?。?)操作系統(tǒng):Microsoft Windows 7</p><p> ?。?)數(shù)據(jù)庫管理系統(tǒng):MYSQL5.5.8</p><p&

24、gt; ?。?)開發(fā)工具包:JDK Version 1.6</p><p>  (4)JSP服務器:tomcat7.0</p><p> ?。?)瀏覽器:chrome</p><p> ?。?)其他工具:Navicat、dreamweaver、Myeclipse8.6</p><p>  3.2 JDK 1.6 和 Tomcat 7.0 服

25、務器配置</p><p>  安裝好 JDK 和 Tomcat 后,要對系統(tǒng)的環(huán)境變量進行配置才能運行。點“我 的電腦”右鍵->屬性,選擇“高級”->環(huán)境變量,然后進行相應的配置:設置JAVA_HOME變量指向其安裝的目錄“D:\Program Files\Java\j2sdk”; TOMCAT_HOME變量指向其安裝目錄“D:\Program Files\Java\Tomcat”;PATH

26、變量中含有“%JAVA_HOME%\bin;”;CLASSPATH變量含有“%JAVA _HOME% \lib \tools.jar;”;設置完以后重新啟動 tomcat,打開瀏覽器,在地址欄中輸入 http://localhost:8080 進行驗證配置是否成功。</p><p>  3.3 系統(tǒng)結構圖和流程圖</p><p>  系統(tǒng)結構如圖3-1所示,此系統(tǒng)是人事管理系統(tǒng),登錄以后

27、可以對員工信息管理、部門管理、考勤管理、培訓管理、工資管理等進行操作。</p><p>  圖3-1 系統(tǒng)結構圖</p><p>  流程簡單如圖3-2所示,登錄系統(tǒng)可以對用戶名、密碼、驗證碼等進行驗證、并分別返回對應的提示信息。</p><p><b>  圖3-2 流程圖</b></p><p>  3.4 數(shù)據(jù)庫

28、設計</p><p><b>  MySQL的概述 </b></p><p>  MySQL是一個小型關系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司。在2008年1月16號被Sun公司收購。而2009年,SUN又被Oracle收購。目前MySQL被廣泛地應用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、成本低,尤其是其開放源碼的特點,許多中小型網(wǎng)站

29、為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。 系統(tǒng)數(shù)據(jù)實體結構描述如下:</p><p>  1、用戶信息表(user):記錄用戶信息,如表3-1所示</p><p>  表3-1 user表</p><p>  2、員工信息表:記錄員工基本信息,如表3-2所示</p><p>  表3-2 personnel表</p&g

30、t;<p>  3、部門信息表:記錄部門信息,如表3-3所示</p><p>  表3-3 department表</p><p>  4、工資表4:記錄員工工資信息,如圖表3-4所示</p><p>  表3-4 wage表</p><p><b>  4 詳細設計</b></p><

31、;p>  4.1 登錄界面設計</p><p>  在服務器端界面輸入管理員的帳號和密碼后就進入到管理界面。如果輸入的用戶名和密碼都正確,則進入管理界面;如果輸入的用戶名或密碼兩者其中有一個錯誤,則返回到 login.jsp 界面,重新登錄。其實現(xiàn)方法是通過 check 方法 來檢查用戶名和密碼是否正確,并將錯誤的用戶名或密碼指示出來??蛻舳说挠?戶登錄也是同樣的方法。其登錄的界面如圖4-1所示。<

32、/p><p><b>  圖4-1登錄界面</b></p><p>  4.2 部門管理模塊設計</p><p>  部門管理主要是對部門進行添加、刪除和修改操作,實現(xiàn)部門錄入等功能,見圖4-2。</p><p>  圖4-2部門管理界面</p><p><b>  實現(xiàn)代碼如下:<

33、/b></p><p>  public class DoDepartment extends HttpServlet {</p><p>  private static final long serialVersionUID = 1L;</p><p>  public void doGet(HttpServletRequest request, Http

34、ServletResponse response)</p><p>  throws ServletException, IOException {</p><p>  this.doPost(request, response);</p><p><b>  }</b></p><p>  public void do

35、Post(HttpServletRequest req, HttpServletResponse resp)</p><p>  throws ServletException, IOException {</p><p>  resp.setContentType("text/html;charset=gbk");</p><p>  resp

36、.setCharacterEncoding("gbk");</p><p>  req.setCharacterEncoding("gbk");</p><p>  HttpSession session = req.getSession(true);</p><p>  session.setMaxInactiveInter

37、val(-1);// 設置session永不過期</p><p>  String name = String.valueOf((Object) session.getAttribute("username"));</p><p>  String pass = String.valueOf((Object) session.getAttribute("pas

38、s"));</p><p>  String grade = String.valueOf((Object) session.getAttribute("grade"));</p><p>  System.out.println("處理部門中取得的name" + name + "-------->dodepartment&

39、quot;);</p><p>  System.out.println("處理部門中取得的pass" + pass + "-------->dodepartment");</p><p>  System.out.println("處理部門中取得的grade" + grade + "-------->dod

40、epartment");</p><p>  String mes = req.getParameter("mes");// 接受傳遞的信息,表明是跳轉(zhuǎn)</p><p>  if (name != null) {//"1".equals(grade) && </p><p>  HandleTable

41、Bean htb = new HandleTableBean();</p><p>  List allList = htb.fenYeDepartment(1, 5);// 設置初始化數(shù)據(jù)為1和10,此處控制一頁顯示的記錄數(shù)</p><p>  int pageCount = htb.getPageCount();</p><p>  session.setAtt

42、ribute("pageNow", 1);// 將pageNow初始化設置為1</p><p>  session.setAttribute("pageCount", pageCount);</p><p>  System.out.println(session.getAttribute("pageNow")</p>

43、<p>  + "pageNow-------------->dologin");</p><p>  System.out.println(session.getAttribute("pageCount")</p><p>  + "pageCount-------------->dologin");&

44、lt;/p><p>  req.setAttribute("allList", allList);</p><p>  session.setAttribute("allList", allList);</p><p>  req.getRequestDispatcher("showDepartment.jsp"

45、;).forward(req, resp);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  添加部門界面如圖4-3。在對部門添加時,部門名稱、部門經(jīng)理、部門成立時間、部門簡介等都是必填

46、項目。</p><p><b>  圖4-3添加部門</b></p><p><b>  實現(xiàn)代碼如下:</b></p><p>  public class DoAddDepartment extends HttpServlet {</p><p>  public void doGet(Http

47、ServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOException {</p><p>  response.setContentType("text/html");</p><p>  this.doPost(r

48、equest, response);</p><p><b>  }</b></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOException

49、{</p><p>  response.setContentType("text/html");</p><p>  request.setCharacterEncoding("gbk");</p><p>  response.setCharacterEncoding("gbk");</p>

50、<p>  String departmentName = request.getParameter("departmentname");</p><p>  String departmentManager = request.getParameter("departmentmanager");</p><p>  String de

51、partmentTime = request.getParameter("departmenttime");</p><p>  String departmrntComment = request.getParameter("departmentcomment");</p><p>  HandleDepartmentBean hdb = new

52、HandleDepartmentBean();</p><p>  if(hdb.addDepartment(departmentName, departmentManager, departmentTime, departmrntComment)){</p><p>  request.getRequestDispatcher("success.jsp").forwa

53、rd(request, response);</p><p><b>  }else{</b></p><p>  request.getRequestDispatcher("failure.jsp").forward(request, response);</p><p><b>  }</b><

54、;/p><p><b>  }</b></p><p><b>  }</b></p><p>  4.3 職工管理模塊設計</p><p>  4.3.1職工列表模塊設計</p><p>  其主要的功能是對職工的信息進行添加、刪除、職工信息更新。此模塊實現(xiàn)了職工信息的錄入。

55、職工可以在客戶端登錄后查看個人的所有信息。</p><p><b>  員工信息管理</b></p><p>  員工信息管理如圖4-5所示??梢赃M行修改和刪除,但是不可以進行添加,可以對員工的ID、員工姓名、性別、民族、出生日期等進行相關操作。</p><p>  圖4-5員工信息管理</p><p><b>

56、;  實現(xiàn)代碼如下:</b></p><p>  public class DoPersonnel extends HttpServlet {</p><p>  public void destroy() {</p><p>  super.destroy(); // Just puts "destroy" string in lo

57、g</p><p>  // Put your code here</p><p><b>  }</b></p><p>  public void doGet(HttpServletRequest request, HttpServletResponse response)</p><p>  throws Serv

58、letException, IOException {</p><p>  this.doPost(request, response);</p><p><b>  }</b></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse respon

59、se)</p><p>  throws ServletException, IOException {</p><p>  response.setContentType("text/html");</p><p>  response.setCharacterEncoding("gbk");</p><

60、p>  response.setCharacterEncoding("gbk");</p><p>  HttpSession session = request.getSession(true);</p><p>  session.setMaxInactiveInterval(-1);// 設置session有效時間,負數(shù)表示永不過期</p>&

61、lt;p>  HandleTableBean htb = new HandleTableBean();</p><p>  List allList = htb.fenYe(1, 10);// 設置初始化數(shù)據(jù)為1和10</p><p>  int pageCount = htb.getPageCount();</p><p>  // req.setAttri

62、bute("pageNow", 1);//將pageNow初始化設置為1</p><p>  session.setAttribute("pageNow", 1);// 將pageNow初始化設置為1</p><p>  session.setAttribute("pageCount", pageCount);</p>

63、<p>  request.setAttribute("pageNow", 1);</p><p>  request.setAttribute("pageCount", pageCount);</p><p>  System.out.println(session.getAttribute("pageNow")+

64、"pageNow-------------->dologin");System.out.println(session.getAttribute("pageCount")+"pageCount-------------->dologin");</p><p>  request.setAttribute("allList"

65、;, allList);</p><p>  //session.setAttribute("allList", allList);</p><p>  request.getRequestDispatcher("showpersonnel.jsp").forward(request, response);</p><p>&

66、lt;b>  }</b></p><p>  public void init() throws ServletException {</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  員工培訓</b&g

67、t;</p><p>  員工培訓管理如圖4-6所示,包含此次和以往的培訓記錄,包括培訓項目、培訓內(nèi)容、培訓日期、培訓地點等操作。</p><p>  圖4-6員工培訓管理</p><p><b>  實現(xiàn)代碼如下:</b></p><p>  public class DoTrain extends HttpServl

68、et {</p><p>  public void destroy() {</p><p>  super.destroy(); // Just puts "destroy" string in log</p><p>  // Put your code here</p><p><b>  }</b&

69、gt;</p><p>  public void doGet(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOException {</p><p>  this.doPost(request, response);<

70、/p><p><b>  }</b></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOException {</p><p>

71、  response.setContentType("text/html");</p><p>  request.setCharacterEncoding("GBK");</p><p>  response.setCharacterEncoding("GBK");</p><p>  HandleTab

72、leBean htb = new HandleTableBean();</p><p>  List allList = htb.fenYeTrain(1, 5);// 設置初始化數(shù)據(jù)為1和10,此處控制一頁顯示的記錄數(shù)</p><p>  int pageCount = htb.getPageCount();</p><p>  request.setAttrib

73、ute("pageCount", pageCount);</p><p>  request.setAttribute("allList", allList);</p><p>  //session.setAttribute("allList", allList);</p><p>  request.g

74、etRequestDispatcher("showTrain.jsp").forward(request,response);</p><p><b>  }</b></p><p>  public void init() throws ServletException {</p><p>  // Put your co

75、de here</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  添加員工</b></p><p>  添加員工如圖4-7所示,是獨立于員工信息管理的一個操作,方便員工信息的添加,注意其中密碼設置不區(qū)分大小寫。</

76、p><p><b>  圖4-7添加員工</b></p><p><b>  實現(xiàn)代碼如下</b></p><p><b>  <%</b></p><p>  String path = request.getContextPath();</p><p&

77、gt;  String basePath = request.getScheme() + "://"</p><p>  + request.getServerName() + ":" + request.getServerPort()</p><p>  + path + "/";</p><p><

78、;b>  %></b></p><p>  4.3.2職工查詢模塊設計</p><p>  本模塊可以用來查詢職工。其操作可以通過職工編號查詢,可以通過職工姓名查詢,也可以通過職工部門編號查詢。</p><p><b>  查找員工</b></p><p>  查找員工如圖4-8所示,可以根據(jù)姓名

79、、性別以及相關籍貫等元素查找。</p><p><b>  圖4-8查找員工</b></p><p><b>  實現(xiàn)代碼如下:</b></p><p><b>  <%</b></p><p>  String path = request.getContextPath

80、();</p><p>  String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";</p><p>  response.setContentType("text/h

81、tml");</p><p>  response.setCharacterEncoding("GBK");</p><p>  request.setCharacterEncoding("GBK");</p><p><b>  %></b></p><p>&l

82、t;b>  個人信息修改</b></p><p>  個人信息修改如圖4-9所示,可以對個別員工的休息進行基本屬性的修改,但不可以有刪除員工的選項。</p><p>  圖4-9個人信息修改</p><p><b>  實現(xiàn)代碼如下:</b></p><p><b>  <%</b

83、></p><p>  String path = request.getContextPath();</p><p>  String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/&qu

84、ot;;</p><p><b>  %></b></p><p><b>  站長之家</b></p><p>  站長之家如圖4-10所示,主要關注的是站長的有關信息,以及應該注意的問題和信息反饋。</p><p><b>  圖4-10站長之家</b></p&

85、gt;<p><b>  實現(xiàn)代碼如下:</b></p><p><b>  <%</b></p><p>  String path = request.getContextPath();</p><p>  String basePath = request.getScheme()+":/

86、/"+request.getServerName()+":"+request.getServerPort()+path+"/";</p><p><b>  %></b></p><p>  4.4 事務管理設計</p><p>  4.4.1. 考勤管理模塊設計</p>

87、<p>  其主要功能是是對職工的考勤信息進行添加、刪除和更新。此模塊實現(xiàn)了對職工考勤信息的管理,可以很明確的使管理人員對職工的考勤信息進行查看。</p><p>  圖4-11考勤管理界面</p><p>  實現(xiàn)代碼如下:public class DoChecking extends HttpServlet {</p><p>  public vo

88、id destroy() {</p><p>  super.destroy(); // Just puts "destroy" string in log</p><p>  // Put your code here</p><p><b>  }</b></p><p>  public vo

89、id doGet(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOException {</p><p>  this.doPost(request, response);</p><p><b>  }</b

90、></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOException {</p><p>  response.setContentType("tex

91、t/html");</p><p>  request.setCharacterEncoding("GBK");</p><p>  response.setCharacterEncoding("GBK");</p><p>  HandleTableBean htb = new HandleTableBean();

92、</p><p>  List allList = htb.fenYeChecking(1, 5);// 設置初始化數(shù)據(jù)為1和10,此處控制一頁顯示的記錄數(shù)</p><p>  int pageCount = htb.getPageCount();</p><p>  request.setAttribute("pageCount", pageC

93、ount);</p><p>  request.setAttribute("allList", allList);</p><p>  //session.setAttribute("allList", allList);</p><p>  request.getRequestDispatcher("showCh

94、ecking.jsp").forward(request,response);</p><p><b>  }</b></p><p>  public void init() throws ServletException {</p><p>  // Put your code here</p><p>&

95、lt;b>  }</b></p><p><b>  }</b></p><p>  4.5 工資管理模塊設計</p><p>  其主要的功能是對職工的工資信息進行添加、刪除和更新。此模塊對職工的工資信息進行了比較詳細的整理,總工資由基本工資和加班工資生成。而在設計時加班工資的算法為每小時 80元。</p>

96、<p>  圖4-12工資管理界面</p><p><b>  實現(xiàn)代碼如下:</b></p><p>  public class DoWage extends HttpServlet {</p><p>  private static final long serialVersionUID = 1L;</p>&l

97、t;p>  public void destroy() {</p><p>  super.destroy(); // Just puts "destroy" string in log</p><p><b>  }</b></p><p>  public void doGet(HttpServletRequest

98、 req, HttpServletResponse resp)</p><p>  throws ServletException, IOException {</p><p>  resp.setContentType("text/html;charset=gbk");</p><p>  resp.setCharacterEncoding(&

99、quot;gbk");</p><p>  req.setCharacterEncoding("gbk");</p><p>  HttpSession session = req.getSession(true);</p><p>  session.setMaxInactiveInterval(-1);// 設置session永不過

100、期</p><p>  String name = String.valueOf((Object) session.getAttribute("username"));</p><p>  String pass = String.valueOf((Object) session.getAttribute("pass"));</p>&

101、lt;p>  String grade = String.valueOf((Object) session.getAttribute("grade"));</p><p>  System.out.println("處理部門中取得的name" + name + "-------->dodepartment");</p><

102、p>  System.out.println("處理部門中取得的pass" + pass + "-------->dodepartment");</p><p>  System.out.println("處理部門中取得的grade" + grade + "-------->dodepartment");</p

103、><p>  String mes = req.getParameter("mes");// 接受傳遞的信息,表明是跳轉(zhuǎn)</p><p>  if (name != null) {//"1".equals(grade) && </p><p>  HandleTableBean htb = new HandleTa

104、bleBean();</p><p>  List allList = htb.fenYeWage(1,5);// 設置初始化數(shù)據(jù)為1和10,此處控制一頁顯示的記錄數(shù)</p><p>  int pageCount = htb.getPageCount();</p><p>  session.setAttribute("pageNow", 1)

105、;// 將pageNow初始化設置為1</p><p>  session.setAttribute("pageCount", pageCount);</p><p>  System.out.println(session.getAttribute("pageNow")</p><p>  + "pageNow--

106、------------>dologin");</p><p>  System.out.println(session.getAttribute("pageCount")</p><p>  + "pageCount-------------->dologin");</p><p>  req.setA

107、ttribute("allList", allList);</p><p>  session.setAttribute("allList", allList);</p><p>  req.getRequestDispatcher("showWage.jsp").forward(req, resp);</p>&l

108、t;p><b>  }</b></p><p><b>  }</b></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException,

109、 IOException {</p><p>  this.doGet(request, response);</p><p><b>  }</b></p><p>  public void init() throws ServletException {}</p><p><b>  }</b&g

110、t;</p><p>  5 系統(tǒng)調(diào)試與測試</p><p><b>  5.1 程序調(diào)試</b></p><p>  在做系統(tǒng)時,代碼部分不管是自己寫的還是從網(wǎng)上資料中獲得的,肯定是會有錯誤的。一般情況下,調(diào)試程序時系統(tǒng)會自動將語法錯誤列表顯示,這種錯誤比較容易改正。然而若出現(xiàn)語義錯誤,系統(tǒng)是不會提示的。也許單個模塊運行起來沒有錯誤,但在

111、整個項目集成時,卻又出現(xiàn)錯誤。而這類錯誤一般不容易解決,它很有可能是一些類的錯誤,也有可能是一些函數(shù)的調(diào)用錯誤,總之這些錯誤是很難找的,需要大量的時間來排查和改正。</p><p><b>  5.2 程序測試</b></p><p>  5.2.1 測試的重要性和目的</p><p>  軟件測試是對軟件需求分析、設計、編碼實現(xiàn)的審查,它是

112、軟件質(zhì)量保證的 關鍵步驟。通常對測試的定義有兩中描述:1)軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程; 2)軟件測試是根據(jù)軟件開發(fā)各個階段的規(guī)格說明和程序的內(nèi)部結構而精心設計的一批測試用例,并利用這些測試用例運行程序以及發(fā)現(xiàn)錯誤的過程,即執(zhí)行測步驟。[1] 測試應該盡早進行,因為軟件的質(zhì)量是在開發(fā)過程中形成的,缺陷是在不知不覺中引入的。測試的目的就是設計測試案例,通過這些測試案例來發(fā)現(xiàn)軟件的缺陷和排除缺陷。測試的目的是在最小的成本和最少的時

113、間內(nèi),通過設計合適的測試用例,系統(tǒng)地發(fā)現(xiàn)不同類別的錯誤。</p><p>  5.2.2測試方法設計</p><p>  本系統(tǒng)主要的測試方法是系統(tǒng)測試。系統(tǒng)測試是將軟件系統(tǒng),作為基于計算機系統(tǒng)的一個元素,與計算機硬件、外設、某些支持軟件、數(shù)據(jù)和人員等元素組合在一起,對計算機系統(tǒng)進行一系列的組裝測試和確認測試。</p><p>  5.2.3 測試的用例設計<

114、/p><p>  測試用例:系統(tǒng)測試 </p><p>  測試項目名稱:人事管理系統(tǒng)---客戶端 </p><p>  測試用例編號:01 </p><p>  測試項目標題:所有基本頁面能正確顯示連接 </p><p>  測試內(nèi)容:驗證系統(tǒng)客戶端首頁是否能夠正常顯示驗證系統(tǒng)客戶端登錄后其內(nèi)容是否顯示正常驗證系統(tǒng)客戶端

115、內(nèi)各模塊內(nèi)容信息是否正確。 </p><p>  測試環(huán)境與系統(tǒng)配置:</p><p>  軟件環(huán)境: Microsoft Windows 7 +360瀏覽器+IE瀏覽器</p><p>  硬件環(huán)境:Inter(R)Celeron(R)1.60 GHz </p><p>  網(wǎng)絡環(huán)境:4人共享 100MB/s 帶寬 </p>

116、<p>  測試輸入數(shù)據(jù) 無 CPU+1.60 GHz 1.5GB 內(nèi)存</p><p><b>  測試人員:戚榮興</b></p><p>  測試時間:2013/4/22</p><p>  測試次數(shù):用兩種瀏覽器進行測試 </p><p>  預期結果: 可以正確顯示系統(tǒng)客戶端首頁、可以正確顯示系統(tǒng)客戶

117、端登錄后其內(nèi)容可以正確顯示系統(tǒng)客戶端內(nèi)各模塊內(nèi)容信息。</p><p>  測試過程: 登錄http://localhost:8080/RSGLXT/模塊,點擊查看其內(nèi)容信息是否正確,查看每個頁面的連接是否有誤。 </p><p>  測試結果: 可以正確顯示系統(tǒng)客戶端首頁、可以正確顯示系統(tǒng)客戶端登錄后其內(nèi)容可以正確顯示系統(tǒng)客戶端內(nèi)各模塊內(nèi)容信息。</p><p>

118、<b>  實現(xiàn)限制:無</b></p><p><b>  結論</b></p><p>  本次畢業(yè)論文設計在周乃富老師的悉心指導和嚴格要求下業(yè)已完成,我想我需要對自己這段時間內(nèi)完成的畢業(yè)論文設計做一個總結。幾個月來忙碌緊張而又有條不紊的畢業(yè)設計,使我有機會對本專業(yè)的基本理論、專業(yè)知識和基本技術有了更深入的了解和體會,使我在三年中所學到的知識

119、得到了系統(tǒng)和升華,真正達到了學以致用。</p><p> ?。?)心態(tài)。在畢業(yè)設計過程中,我學到了做事情應有的態(tài)度。第一,我明白了做學問要一絲不茍,不要輕視任何細小的問題,要尋找正確的方法去解決;第二,在做事情的過程中,要有耐心和毅力,不能一遇到困難就打退堂鼓,只要堅持就可以找到思路,就能解決問題。第三,在工作中要學會與他人合作的態(tài)度,認真聽取別人的意見,這樣做起事情來就可以事半功倍。</p>&l

120、t;p>  (2)實踐。在本次的畢業(yè)論文設計中,我充分的體會到了“實踐出真知”,書本上的知識是不夠的,只有把理論與實踐結合起來才能夠真正地學到知識。一個管理信息系統(tǒng)的設計,不可能一步到位,還需要不斷的完善和補充。編程前的深思熟慮是減少程序調(diào)試工作量的重要方法,只有進行充分準備,才會減少調(diào)試過程中的工作量。雖然在開始寫程序之前我做了大量的準備工作,但在真正寫程序的時侯仍然發(fā)現(xiàn)許多問題。有些問題是分析時疏漏的,有些則是如果不做無論如何

121、也想不到的。所以,通過實踐,我在收獲知識的同時,還收獲了閱歷,收獲了成熟。在設計過程中,不僅培養(yǎng)了我的獨立思考、動手操作的能力,在各種其它能力上也都有了提高。更重要的是,我學會了很多學習的方法。而這是日后最實用的,真的是受益匪淺。要面對社會的挑戰(zhàn),只有不斷的學習、實踐。</p><p> ?。?)技術。在做完本次畢業(yè)設計后,我不僅熟練掌握了一門編程語言,而且,我還懂得了如何來學習一門技術,如:數(shù)據(jù)庫鏈接等。這使我

122、的編程技術得到了很大的提高。</p><p>  總的來說,畢業(yè)設計即將結束,它使我從中獲得了大量的新知識、新技術。相信這次畢業(yè)設計對我以后走上工作崗位有很大的幫助。</p><p><b>  致謝</b></p><p>  畢業(yè)設計現(xiàn)已順利完成。首先我要感謝我的父母給我這個能夠獲得大學職業(yè)素質(zhì)教育,然后要感謝畢業(yè)論文指導老師周乃富,他的悉

123、心指導和大力支持,在論文的總體結構和功能的把握上給予了我非常大的幫助。其次要感謝給予我?guī)椭耐瑢W們,感謝他們對我提出的意見和建議。最后,我還需要感謝大學期間所有教過我的老師,是他們使我獲得了良好的專業(yè)知識和技能,使我得以順利地完成學業(yè)。</p><p><b>  參考文獻</b></p><p>  1 Microsoft SQLServer 7.0 開發(fā)指南

124、[美]Sharon Bjeletich,Greg Mable </p><p>  2 Microsoft SQLServer 7.0 系統(tǒng)管理指南 [美]M.Soenik,o.Sledge</p><p>  3 JAVA 例解教程 柯溫釗 中國鐵道出版社 </p><p>  4 Java 程序設計入門教程 林邦杰 中國青年出版社</p>

溫馨提示

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

評論

0/150

提交評論