



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、軟件開發(fā)生產(chǎn)實習報告姓名學號班級人事管理系統(tǒng)項目名稱光谷軟件園實習時間實習地點實習成績指導教師簽字信息科學與工程學院2016年7 月15 日軟件開發(fā)生產(chǎn)實習報告1. 實習目的1.1 使學生全面了解軟件項目實施的過程,理解軟件企業(yè)對于程序員的基本素質(zhì)和技術(shù)能力要求。1.2 使學生掌握 JSP 及 Servlet 基本的 JavaEE 編程技術(shù),能夠綜合運用oracle 數(shù)據(jù)庫及Eclipse 開發(fā)環(huán)境進行小型項目的開發(fā)。1.3 重點培養(yǎng)學生的團隊精神和協(xié)作意識,提高其口頭和書面的溝通能力。1.4 使學生掌握快速學習新知識、新技術(shù)方法,培養(yǎng)良好的分析問題和解決問題的能力1.5 重點提高學生的編程能
2、力,使學生建立正確的編程理念,養(yǎng)成規(guī)范的編程習慣。2實習過程2.1 技術(shù)準備2.1.1 JDBC( Java 數(shù)據(jù)庫連接)技術(shù)Java數(shù)據(jù)庫連接是 java 語言中用來規(guī)范客戶端程序如何來訪問數(shù)據(jù)庫的應用程序接口,提供了諸如查詢和更新數(shù)據(jù)庫中數(shù)據(jù)的方法。本次程序利用該技術(shù)連接到oracle 數(shù)據(jù)庫,實現(xiàn)數(shù)據(jù)的更新,刪除,插入。2.1.2 JSP技術(shù)JSP 其根本是一個簡化的Servlet 技術(shù),它是傳統(tǒng)的網(wǎng)頁HTML 文件中插入 java 程序段。本次程序利用JSP 技術(shù)實現(xiàn)其動態(tài)跳轉(zhuǎn)。2.1.3 用到的相關(guān)軟件(1)jdk (運行環(huán)境):安裝好jdk 后,設置好環(huán)境變量。(2)Tomcat:
3、進行相應的配置。(3)Eclipse J2EE(開發(fā)環(huán)境):啟動開發(fā)環(huán)境,然后配置好之前安裝好的jdk 。(4)Oracle 數(shù)據(jù)庫( 10G):運行安裝程序,設置兼容性,以管理員身份運行,設置密碼;安裝完成后檢查服務,確定以下兩個服務:OracleOraDb10g_home1TNSListener 監(jiān)聽服務OracleServiceORCL(服務名稱 ORCL )核心服務這兩個服務必須為開啟狀態(tài)。2.2 項目實施2.2.1 功能需求管理員登錄部門管理主要用于部門的管理,描不可裁剪述人事管理系統(tǒng)中的部組織管理系統(tǒng)管理門信息,其中也包含了部門的上下級關(guān)系。部門管部門管理崗位管理設理置包關(guān)含系對部
4、門信息的查詢,以及添加部門;查詢部門時可對部門信息進行修改和刪除操作。崗位管理主要用于崗位的管理,描崗位管理述人事管理系統(tǒng)中的崗位信息。崗位管理包含對崗位信息的查詢,以及添加新的崗位;查詢崗位時可以崗位信息進行修改和刪除操作,系統(tǒng)管理主要用于管理員的管理,不可裁剪描述人事管理系統(tǒng)中的信息。管理員登錄進入系統(tǒng)后,通過系統(tǒng)管理查詢管理員的信息,以及添加新的管理員,但不可刪除或更改管理員的信息。設置關(guān)系主要用于將各個不同的不可裁剪崗位歸到相應的部門,便于管理。需求描述功能名稱部門管理優(yōu)先級高業(yè)務背景部門是構(gòu)成一個組織的基本單位。部門管理用于維護部門的基本信息,以及體現(xiàn)整個系統(tǒng)中部門之間的上下級關(guān)系,
5、還有該部門的類型級別是公司還是部門。功能說明1.添加部門2.修改部門信息3.刪除部門約束條件系統(tǒng)要求部門的編號唯一。相關(guān)查詢查詢部門列表,點擊部門查詢出現(xiàn)所有的部門信息其他需求無裁剪說明不可裁剪流程描述開始數(shù)據(jù)描述部門基本信息登錄編號結(jié)束是部門名稱部門管理是類型(下拉框)分為公司、部門是電話是傳真是描述新修刪查是是上級部門(下拉框)分為各個部門,總經(jīng)辦和總公司建改除詢成立日期部部部是需求描述部門門門門功能名稱崗位管理優(yōu)先級高業(yè)務背景崗位是指一個組織中由特定人員所承擔的多種職責的集合,一般來講崗位對應到了特定的部門。但為了簡化實訓項目,裁剪了崗位與部門之間的關(guān)系。本功能就是對各崗位進行管理,包括
6、增加、修改、刪除崗位,以及查詢崗位下的員工等。功能說明1.增加崗位2.修改崗位3. 刪除崗位約束條件無相關(guān)查詢查詢崗位信息,包括編號,名稱,類型,所屬部門以及該崗位最大開始限制多少人。其他需求裁剪說明無不可裁剪登錄流程描述崗位管理新修刪查建改除詢數(shù)據(jù)描述崗位基本信息崗位編號是崗位名稱是類型(下拉框)分為管理,技術(shù),營銷,市場是等;崗位編制限制崗位上最多可配置多少員工是所屬部門(下拉框)分為行政部,生產(chǎn)部,銷售部,是技術(shù)部,財務部等。備注 1備注 2備注 3需求描述功能名稱系統(tǒng)管理優(yōu)先級低業(yè)務背景管理管理員相關(guān)的信息功能說明1、添加管理員2、查詢管理員3、退出登錄約束條件無相關(guān)查詢管理員編號、姓
7、名等其他需求無裁剪說明不可裁剪。流程描述開始數(shù)據(jù)描述管理員基本信息登錄編號名稱登錄密碼系統(tǒng)管理所屬部門電話入職日期需求描述添加查詢管管功能名稱 理設置關(guān)系理優(yōu)先級員低員否否否是是是否否否退出登錄業(yè)務背景每個部門中有不同的崗位功能說明將不同的崗位保存到相應的部門約束條件無相關(guān)查詢可通過查詢崗位信息來查詢該崗位的所屬部門其他需求無裁剪說明不可裁剪。2.2.2 總體設計本次人事管理系統(tǒng)要求完成管理員的登錄,添加管理員以及查詢管理員信息,部門信息的查詢,部門的添加,部門信息的刪除和修改,崗位信息的查詢,崗位的添加,崗位信息得到刪除和修改以及崗位和部門之間的關(guān)系設置。因此該系統(tǒng)除了基本的部門類,管理員類
8、,崗位類等以外主要的就是對他們的操作類開,始主要如下:管理員登錄模塊名稱功能簡述系統(tǒng)管理模塊1、管理員登錄類( ManagerServlet )組織管理2、查詢管理員信息類(ManagerSelectServlet )系統(tǒng)管理3、添加管理員信息類(ManagerAddServlet )部門管理模塊1、查詢部門信息類(SkdeptSelectServlet )2、修改部門信息類(SkdeptModifyServlet )部門管理崗3、位刪管除理部門信息類(SkdeptDeleteServlet )系統(tǒng)管理4、添加部門類( SkdeptAddServlet )崗位管理模塊1、查詢崗位信息類(Skj
9、obSelectServlet )新修建改部部門門刪查新2、修改崗位信息類(SkjobModifyServlet修刪查設除詢建3、刪除崗位信息類(SkjobDeleteServlet改除詢置部部崗4、添加崗位類(SkjobAddServlet )崗崗崗關(guān)門設置關(guān)系模塊1、添加關(guān)系類(AddSkdeptSkjob )門位位位位系2、添加關(guān)系類2( AddSkdeptSkjob2 )查添)詢加管管理理員員2.2.3 詳細設計與編碼(1)管理員登錄功能描述數(shù)據(jù)結(jié)構(gòu)與算法管理員輸入賬戶密碼登進人事管理系統(tǒng)退出登錄package com.servlet;public class ManagerServl
10、et extends HttpServlet protected void doGet(HttpServletRequest req,結(jié)束HttpServletResponse resp)throws ServletException, IOException doPost(req, resp);protected void doPost(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException req.setCharacterEncoding("utf-8");
11、resp.setCharacterEncoding("utf-8");String name=req.getParameter("yonghuming");String password=req.getParameter("password");ManagerDao sd=new ManagerDao();HttpSession session=req.getSession();try Manager stu=sd.login(name,password);if(stu=null)session.setAttribute("
12、errorMsg", "用戶名或密碼錯誤! ");session.setAttribute("redirectUrl","login.html");req.getRequestDispatcher("error.jsp").forward(req,resp);elsesession.setAttribute("userInfo",stu);resp.sendRedirect("index.html"); catch (SQLException e) e.printS
13、tackTrace();補充說明(2)查詢管理員信息功能描述查詢管理員的基本信息數(shù)據(jù)結(jié)構(gòu)package com.servlet;與算法public class ManagerSelectServlet extends HttpServlet protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException doPost(req, resp);protected void doPost(HttpServletRequest req,HttpServle
14、tResponse resp)throws ServletException, IOException ManagerDao sd=new ManagerDao();tryList<Manager> list=sd.find(); req.getSession().setAttribute("ManagerList",list); req.getRequestDispatcher("ManagerList.jsp").forward(req, resp);catch (SQLException e)e.printStackTrace();補充
15、說明(3)添加管理員功能描述添加新的管理員數(shù)據(jù)結(jié)構(gòu)package com.servlet;與算法public class ManagerAddServlet extends HttpServlet protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException doPost(req, resp);protected void doPost(HttpServletRequest req,HttpServletResponse resp)throws
16、ServletException, IOException req.setCharacterEncoding("utf-8");req.setCharacterEncoding("utf-8");String name=req.getParameter("name");String password=req.getParameter("pass");Manager man=new Manager();req.setCharacterEncoding("utf-8");req.setCharact
17、erEncoding("utf-8");man.setName(name);man.setPassword(password);ManagerDao d=new ManagerDao();int count;try count=d.AddManager(man);if(count>=1)req.getRequestDispatcher("addmanager.html").forward(req, resp);elseHttpSession session=req.getSession();session.setAttribute("er
18、rorMsg", "添加失敗");session.setAttribute("redirectUrl","addmanager");req.getRequestDispatcher("error.jsp").forward(req,resp); catch (SQLException e) e.printStackTrace();補充說明(1)查詢部門信息功能描述查詢部門的基本信息數(shù)據(jù)結(jié)構(gòu)package com.servlet;與算法public class SkdeptSelectServlet ext
19、ends HttpServlet protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException doPost(req, resp);protected void doPost(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException SkdeptDao sd=new SkdeptDao();tryList<Skdept> l
20、ist=sd.find();req.getSession().setAttribute("SkdeptList",list);req.getRequestDispatcher("SkdeptList.jsp").forward(req, resp);catch (SQLException e)e.printStackTrace();補充說明(2)修改部門信息功能描述當發(fā)現(xiàn)部門的信息有誤時,可進行修改數(shù)據(jù)結(jié)構(gòu)與算法package com.servlet;public class SkdeptModifyServlet extends HttpServlet
21、 protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException doPost(req,resp);protected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException req.setCharacterEncoding("utf-8");resp.setCharacterEncodin
22、g("utf-8");String id=req.getParameter("id");String name=req.getParameter("name");String type=req.getParameter("type");String tele=req.getParameter("tele");String fax=req.getParameter("fax");String discrip=req.getParameter("discrip"
23、;);String skdsuper=req.getParameter("skdsuper");String createtime=req.getParameter("createtime");Skdept skd=new Skdept();skd.setId(Integer.parseInt(id);skd.setName(name);skd.setType(type);skd.setTele(Long.parseLong (tele);skd.setFax(fax);skd.setDiscrip(discrip);skd.setSkdsuper(sk
24、dsuper);skd.setCreatetime(createtime);SkdeptDao sd=new SkdeptDao();try int count=sd.update(skd);if(count>=1)/ 修改成功 req.getRequestDispatcher("select").forward(req, resp);else/ 修改失敗處理HttpSession session=req.getSession();session.setAttribute("errorMsg"," 修改失??!");session
25、.setAttribute("redirectUrl","select");req.getRequestDispatcher("error.jsp").forward(req,resp); catch (NumberFormatException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace();補充說明(3)刪除部門信息功能描述數(shù)據(jù)結(jié)構(gòu)與算法將部門刪除package com.servlet;public class SkdeptDeleteServl
26、et extends HttpServlet protected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException doPost(req,resp);protected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException req.setCharacterEncoding("utf-8");r
27、esp.setCharacterEncoding("utf-8");String id=req.getParameter("id");SkdeptDao sd=new SkdeptDao();try int count=sd.delete(Integer.parseInt(id);if(count>=1)/ 刪除成功 req.getRequestDispatcher("select").forward(req, resp);else/ 刪除失敗處理HttpSession session=req.getSession();sess
28、ion.setAttribute("errorMsg", " 刪除失?。?"); session.setAttribute("redirectUrl","select")req.getRequestDispatcher("error.jsp").forward( req, resp); catch (NumberFormatException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace();補充說明(4)添加部
29、門功能描述添加新的部門數(shù)據(jù)結(jié)構(gòu)package com.servlet;與算法public class SkdeptAddServlet extends HttpServlet protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException doPost(req, resp);protected void doPost(HttpServletRequest req,HttpServletResponse resp)throws ServletExce
30、ption, IOException req.setCharacterEncoding("utf-8");req.setCharacterEncoding("utf-8");try String name=req.getParameter("name");String type=req.getParameter("type");String tele=req.getParameter("tele");String fax=req.getParameter("fax");Str
31、ing discrip=req.getParameter("discrip");String skdsuper=req.getParameter("super");String createtime=req.getParameter("createtime");Skdept skd=new Skdept();req.setCharacterEncoding("utf-8");req.setCharacterEncoding("utf-8");skd.setName(name);skd.setTy
32、pe(type);skd.setTele(Long.parseLong(tele);skd.setFax(fax);skd.setDiscrip(discrip);skd.setSkdsuper(skdsuper);skd.setCreatetime(createtime);SkdeptDao d=new SkdeptDao();int count;count=d.AddSkdept(skd);if(count>=1)req.getRequestDispatcher("sec1.html").forward(req,resp);elseHttpSession sess
33、ion=req.getSession();session.setAttribute("errorMsg", "添加失敗");session.setAttribute("redirectUrl","sec1.html");req.getRequestDispatcher("error.jsp").forward(req,resp); catch (Exception e) e.printStackTrace();HttpSession session=req.getSession();sessio
34、n.setAttribute("errorMsg", " 添加失敗 "); session.setAttribute("redirectUrl","adddept.html");req.getRequestDispatcher("error.jsp").forward(req,resp);補充說明(1)查詢崗位信息功能描述查詢崗位的基本信息數(shù)據(jù)結(jié)構(gòu)與算法package com.servlet;public class SkjobSelectServlet extends HttpServlet
35、protected void doGet(HttpServletRequest req, HttpServletResponseresp)throws ServletException, IOException doPost(req, resp);protected void doPost(HttpServletRequest req, HttpServletResponseresp)throws ServletException, IOException SkjobDao sd=new SkjobDao();tryList<Skjob> list=sd.find();req.ge
36、tSession().setAttribute("SkjobList",list);req.getRequestDispatcher("SkjobList.jsp").forward(req, resp);catch (SQLException e)e.printStackTrace();補充說明(2)修改崗位信息功能描述對崗位的信息進行修改數(shù)據(jù)結(jié)構(gòu)與算法package com.servlet;public class SkjobModifyServlet extends HttpServlet protected void doGet(HttpServ
37、letRequest req,HttpServletResponse resp)throws ServletException, IOException doPost(req,resp);protected void doPost(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException req.setCharacterEncoding("utf-8");resp.setCharacterEncoding("utf-8");String id=
38、req.getParameter("id");String name=req.getParameter("name");String type=req.getParameter("type");String limit=req.getParameter("limit");String deptno=req.getParameter("deptno");String skd_id=req.getParameter("skd_id");Stringexplanation1=req
39、.getParameter("explanation1");Stringexplanation2=req.getParameter("explanation2");Stringexplanation3=req.getParameter("explanation3");Skjob skj=new Skjob();skj.setId(Integer.parseInt(id);skj.setName(name);skj.setType(type);skj.setLimit(Integer.parseInt(limit);skj.setDep
40、tno(deptno);skj.setSkd_id(Integer.parseInt(skd_id);skj.setExplanation1(explanation1);skj.setExplanation2(explanation2);skj.setExplanation3(explanation3);SkjobDao sd=new SkjobDao();try int count=sd.update(skj);if(count>=1)/ 刪除成功req.getRequestDispatcher("select").forward(req, resp);else/
41、刪除失敗處理HttpSession session=req.getSession();session.setAttribute("errorMsg"," 修改失??!");session.setAttribute("redirectUrl","select");req.getRequestDispatcher("error.jsp").forward(req,resp); catch (NumberFormatException e) e.printStackTrace(); catch (SQL
42、Exception e) e.printStackTrace();補充說明(3)刪除崗位信息功能描述刪除掉沒有的崗位數(shù)據(jù)結(jié)構(gòu)與算法package com.servlet;public class SkjobDeleteServlet extends HttpServlet protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException doPost(req,resp);protected void doPost(HttpServletRequest
43、 req,HttpServletResponse resp)throws ServletException, IOException req.setCharacterEncoding("utf-8");resp.setCharacterEncoding("utf-8");String id=req.getParameter("id");SkjobDao sd=new SkjobDao();try int count=sd.delete(Integer.parseInt(id);if(count>=1)/ 刪除成功req.getR
44、equestDispatcher("select").forward(req,resp);else/ 刪除失敗處理HttpSession session=req.getSession();session.setAttribute("errorMsg"," 刪除失??!");session.setAttribute("redirectUrl","select");req.getRequestDispatcher("error.jsp").forward(req,resp); ca
45、tch (NumberFormatException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace();補充說明(4)添加崗位信息功能描述添加新的崗位數(shù)據(jù)結(jié)構(gòu)package com.servlet;與算法public class SkjobAddServlet extends HttpServlet protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException d
46、oGet(req, resp);protected void doPost(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException req.setCharacterEncoding("utf-8");req.setCharacterEncoding("utf-8");try String name=req.getParameter("name");String type=req.getParameter("typ
47、e");String limit=req.getParameter("limit");String deptno=req.getParameter("deptno");String skd_id=req.getParameter("skd_id");Stringexplanation1=req.getParameter("explanation1");Stringexplanation2=req.getParameter("explanation2");Stringexplanatio
48、n3=req.getParameter("explanation3");Skjob skj=new Skjob();req.setCharacterEncoding("utf-8");req.setCharacterEncoding("utf-8");skj.setName(name);skj.setType(type);skj.setLimit(Integer.parseInt(limit) );skj.setDeptno(deptno);skj.setSkd_id(Integer.parseInt(skd_id);skj.setE
49、xplanation1(explanation1);skj.setExplanation2(explanation2);skj.setExplanation3(explanation3);SkjobDao job=new SkjobDao();int count;count=job.AddSkjob(skj);if(count>=1)/ 成功 req.getRequestDispatcher("sec1.html").forward(req,resp);elseHttpSession session=req.getSession();session.setAttrib
50、ute("errorMsg", " 添加失敗 "); session.setAttribute("redirectUrl", "sec1.html");req.getRequestDispatcher("error.jsp").forward(req, resp); catch (Exception e) e.printStackTrace();HttpSession session=req.getSession();session.setAttribute("errorMsg&quo
51、t;, " 添加失敗 "); session.setAttribute("redirectUrl","addjob.html");req.getRequestDispatcher("error.jsp").forward(req,resp);補充說明功能描述設置部門和崗位之間的關(guān)系數(shù)據(jù)結(jié)構(gòu)與算法package com.servlet;public class AddSkdeptSkjob extends HttpServlet protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException doPost(req, resp);protected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException SkdeptDao sk
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度倉儲物流勞務派遣安全責任書
- 2025年度在線貸款中介居間合作協(xié)議
- 二零二五年度企業(yè)內(nèi)部員工外出安全免責合同
- 2025年度個人租房合同協(xié)議書模板(含租賃房屋維修費用承擔)
- 2025年度應屆大學生實習合同
- 國際發(fā)展合作的中國實踐 第六期綠色發(fā)展援助篇
- 2025年度抖音網(wǎng)紅達人合作推廣合同模板
- 2025年度合作社土地入股與農(nóng)業(yè)資源環(huán)境監(jiān)測合作協(xié)議
- 2025年度房屋租賃合同租賃雙方租賃期間租賃物租賃權(quán)轉(zhuǎn)讓協(xié)議
- 沙石運輸行業(yè)自律公約
- 工期定額-民用建筑
- 黃土地質(zhì)災害類型及其危害性評估
- 交際德語教程第二版A1Studio[21] 課后習題參考答案
- 最新修改 班組安全管理建設--5831模式通用課件
- 氣割、電氣焊作業(yè)的應急救援預案
- 2018年柴油機大修工程量單
- 超級精美PPT模版美國經(jīng)典ppt模板(通用珍藏版2)
- 2022年“葉圣陶杯”全國中學生新作文大賽專用稿紙
- 中醫(yī)內(nèi)科方歌-八
- 氣動控制閥的定義分類及工作原理詳解
- 梯形練字格A4紙打印版
評論
0/150
提交評論