版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
成績課程設(shè)計報告〔2023至2023學(xué)年度第一學(xué)期〕設(shè)計題目基于SSH的員工管理系統(tǒng)架構(gòu)課程名稱信息管理建模綜合實驗專業(yè)班級信息管理與信息系統(tǒng)2023級1班學(xué)號20230702123姓名強(qiáng)偉偉任課教師張旭東信息工程學(xué)院2023年11月一需求分析隨著計算機(jī)和網(wǎng)絡(luò)的普及,在各項工作中,計算機(jī)和網(wǎng)絡(luò)帶給人們越來越多的方便和快捷。針對于各個企事業(yè)單位,人力資源部都需要對各自單位或公司的人員情況進(jìn)行統(tǒng)一管理。隨著各個企事業(yè)單位規(guī)模的擴(kuò)大和管理質(zhì)量需求的提高,以往的紙質(zhì)管理資料已經(jīng)遠(yuǎn)遠(yuǎn)不能滿足企事業(yè)管理的需求。因此,一個在線員工管理系統(tǒng)對許多單位來說,不僅可以實現(xiàn)對所有員工有序、統(tǒng)一的管理,還可以大大提高管理的效率和質(zhì)量,減少相關(guān)工作人員的工作負(fù)擔(dān)。二系統(tǒng)功能該系統(tǒng)基于B/S結(jié)構(gòu),具體功能是由計算機(jī)來代替人工執(zhí)行一系列諸如增加新員工信息、修改員工信息、刪除離職員工信息、查詢員工、查詢部門、參加新部門等操作。這樣就可以使辦公人員輕松快捷地完成企事業(yè)單位員工信息管理的任務(wù),使員工管理工作系統(tǒng)化、標(biāo)準(zhǔn)化、自動化,從而到達(dá)提高企業(yè)管理效率的目的。三環(huán)境說明本工程以跨平臺的java語言做為開發(fā)語言,以目前主流的Struts2、spring、hibernate框架為根底,利用各個框架的優(yōu)勢〔struts2的視圖和邏輯控制、spring的Ioc和AOP機(jī)制、hibernate的對數(shù)據(jù)庫操作的封裝等〕,將此三大框架整合〔即SSH〕,在此根底上實現(xiàn)具體的控制邏輯,以完成后期的業(yè)務(wù)處理。具體的環(huán)境如下:系統(tǒng)環(huán)境:windows7開發(fā)語言:java開發(fā)工具:MyEclipse8.6、MySql-Front數(shù)據(jù)庫:mysql效勞器:Tomcat6.0瀏覽器:IE/FileFox四詳細(xì)設(shè)計1、數(shù)據(jù)庫設(shè)計:數(shù)據(jù)庫名稱:manager表設(shè)計:(1).dept表(2).emp表2、程序框架構(gòu)建(1)、翻開MyEclipse;(2)、新建一個webproject,起名為manager;(3)、右擊該工程,選擇MyEclipse—AddSpringCapabilities,對該工程添加對Spring框架的支持,如下列圖:(4)、翻開MyEclipseDatabaseExplorer,新建一個數(shù)據(jù)源,如下:(5)、重復(fù)步驟3,選擇AddHibernateCapabilities,對該工程添加對Hibernate支持,如下:(6)、重復(fù)步驟3,選擇AddStrutsCapabilities,對該工程添加對Struts框架的支持,如下:(7)、修改主配置文件web.xml,代碼如下:<?xmlversion="1.0"encoding="UTF-8"?><web-appversion="2.5"xmlns="://java.sun/xml/ns/javaee"xmlns:xsi=":///2001/XMLSchema-instance"xsi:schemaLocation= ://java.sun/xml/ns/javaee/web-app_2_5.xsd"><welcome-file-list><welcome-file>welcome.jsp</welcome-file></welcome-file-list><context-param><param-name>contextConfigLocation</param-name><param-value>classpath*:spring.xml</param-value></context-param><listener><listener-class></listener-class></listener><filter><filter-name>struts2</filter-name><filter-class></filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>*.action</url-pattern></filter-mapping><filter-mapping><filter-name>struts2</filter-name><url-pattern>*.jsp</url-pattern></filter-mapping></web-app>(8)、在manager下創(chuàng)立如下工程結(jié)構(gòu):目錄結(jié)構(gòu)說明:〔1〕src目錄:com.action:存放用于接收用戶請求并作出響應(yīng)的Action類;com.dao:存放數(shù)據(jù)訪問對象類及其接口;com.pojo:存放javaBean;com.service:存放業(yè)務(wù)邏輯實現(xiàn)類〔2〕WebRoot目錄:根目錄下存放公共的jsp文件;css:存放css樣式文件;dept:存放與部門相關(guān)的jsp文件;emp:存放與員工相關(guān)的jsp文件;img:存放工程中用到的圖片(9)、翻開MyEclipseDatabaseExplorer,選擇步驟4中創(chuàng)立的數(shù)據(jù)源,翻開table項,選中DEPT和EMP表,右擊選HibernateReverseEngineering,將兩張表逆向到com.pojo包中,那么在此包下可以看到emp和dept的vo對象及其hibernate的配置文件;(10)、數(shù)據(jù)訪問對象DAO的實現(xiàn):10-1DaoImpl.javapackagecom.dao;importjava.io.Serializable;importjava.util.List;importorg.hibernate.criterion.DetachedCriteria;importorg.springframework.dao.DataAccessException;importorg.springframework.orm.hibernate3.HibernateTemplate;publicclassDaoImplimplementsDao{ HibernateTemplatehibernateTemplate;publicvoidsetHibernateTemplate(HibernateTemplatehibernateTemplate){this.hibernateTemplate=hibernateTemplate; }publicvoidsave(Objectentity)throwsDataAccessException{hibernateTemplate.save(entity); }publicvoidmerge(Objectentity)throwsDataAccessException{hibernateTemplate.merge(entity); }publicvoidsaveOrUpdate(Objectentity)throwsDataAccessException{hibernateTemplate.saveOrUpdate(entity); }publicvoidupdate(Objectentity)throwsDataAccessException{hibernateTemplate.update(entity); }publicvoiddelete(Objectentity)throwsDataAccessException{hibernateTemplate.delete(entity); }publicListfindByDetachedCriteria(DetachedCriteriadc)throwsDataAccessException{returnhibernateTemplate.findByCriteria(dc); }publicListfindById(Classclazz,Serializableid)throwsDataAccessException{returnhibernateTemplate.get(clazz,id); }publicListfindByExample(Objectentity){returnhibernateTemplate.findByExample(entity); }}10-2Dao.javapackagecom.dao;importjava.io.Serializable;importjava.util.List;importorg.hibernate.criterion.DetachedCriteria;importorg.springframework.dao.DataAccessException;publicinterfaceDao{ publicabstractvoidsave(Objectentity)throwsDataAccessException; publicabstractvoidmerge(Objectentity)throwsDataAccessException; publicabstractvoidsaveOrUpdate(Objectentity)throwsDataAccessException; publicabstractvoidupdate(Objectentity)throwsDataAccessException; publicabstractvoiddelete(Objectentity)throwsDataAccessException; publicabstractListfindByDetachedCriteria(DetachedCriteriadc) throwsDataAccessException; publicabstractListfindById(Classclazz,Serializableid) throwsDataAccessException; publicabstractListfindByExample(Objectentity);}(11)、業(yè)務(wù)邏輯Service的實現(xiàn):11-1DeptServiceImpl.javapackagecom.service;importjava.util.List;importorg.hibernate.criterion.DetachedCriteria;importorg.springframework.dao.DataAccessException;importcom.dao.Dao;importcom.pojo.Dept;publicclassDeptServiceImplimplementsDeptService{ Daodao; publicvoidsetDao(Daodao){ this.dao=dao; } publicStringsave(Deptdept){ Stringflag="error"; try{ dao.save(dept); flag="success"; }catch(DataAccessExceptione){ flag="error"; e.printStackTrace(); } returnflag; } publicStringupdate(Deptdept){ Stringflag="error"; try{ dao.update(dept); flag="success"; }catch(DataAccessExceptione){ flag="error"; e.printStackTrace(); } returnflag; } publicStringdelete(Deptdept){ Stringflag="error"; try{ dao.delete(dept); flag="success"; }catch(DataAccessExceptione){ flag="error"; e.printStackTrace(); } returnflag; } publicDeptgetDept(Deptdept){ return(Dept)dao.findById(Dept.class,dept.getId()); } publicList<Dept>findAll(){ DetachedCriteriadc=DetachedCriteria.forClass(Dept.class); returndao.findByDetachedCriteria(dc); }}11-2DeptService.javapackagecom.service;importjava.util.List;importcom.pojo.Dept;publicinterfaceDeptService{ publicabstractStringsave(Deptdept); publicabstractStringupdate(Deptdept); publicabstractStringdelete(Deptdept); publicabstractDeptgetDept(Deptdept); publicabstractList<Dept>findAll();}注:EmpServiceImpl.java和EmpService.java的實現(xiàn)與上類似,在此省略。(12)控制跳轉(zhuǎn)Action的實現(xiàn):12-1DeptAction.javapackagecom.action;importjava.util.List;importcom.pojo.Dept;importcom.service.DeptService;publicclassDeptAction{ DeptServicedeptService; Deptdept; List<Dept>deptList; publicvoidsetDeptService(DeptServicedeptService){ this.deptService=deptService; } publicDeptgetDept(){ returndept; } publicvoidsetDept(Deptdept){ this.dept=dept; } publicList<Dept>getDeptList(){ returndeptList; } publicvoidsetDeptList(List<Dept>deptList){ this.deptList=deptList; } publicDeptServicegetDeptService(){ returndeptService; } publicStringfind(){ deptList=deptService.findAll(); return"ok"; }}注:EmpAction.java的實現(xiàn)與上類似,在此省略。(13)、struts.xml的配置:<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEstrutsPUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.1//EN"":///dtds/struts-2.1.dtd"><struts><packagename="dept"extends="struts-default"><actionname="findDept"class="deptAction"method="find"><resultname="ok">/dept/searchdept.jsp</result><resultname="input">/error.jsp</result></action><actionname="addDept"class="deptAction"method="add"><resultname="success"type="redirect">findDept.action</result><resultname="input">/error.jsp</result></action></package></struts>(14)、寫完這些類后,需要在spring.xml中對每個java類進(jìn)行管理,spring.xml配置文件的內(nèi)容如下:<?xmlversion="1.0"encoding="UTF-8"?><beansxmlns=":///schema/beans"xmlns:xsi=":///2001/XMLSchema-instance"xmlns:p=":///schema/p"xsi:schemaLocation=":///schema/beans:///schema/beans/spring-beans-3.0.xsd"><beanid="dataSource"class="org.apachemons.dbcp.BasicDataSource"><propertyname="driverClassName"value="com.mysql.jdbc.Driver"></property><propertyname="url"value="jdbc:mysql://localhost:3306/manager"></property><propertyname="username"value="root"></property><propertyname="password"value="root"></property></bean><beanid="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><propertyname="dataSource"><refbean="dataSource"/></property><propertyname="hibernateProperties"><props><propkey="hibernate.dialect"></prop><propkey="hibernate.show_sql"> true</prop><propkey="hibernate.format_sql"> true</prop><propkey="hibernate.hbm2ddl.auto"> update</prop></props></property><propertyname="mappingResources"><list><value>com/pojo</value><value>com/pojo</value></list></property></bean><beanid="hibernateTemplate"class="org.springframework.orm.hibernate3.HibernateTemplate"><propertyname="sessionFactory"ref="sessi
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年節(jié)能型空調(diào)采購、安裝與節(jié)能補(bǔ)貼申請合同3篇
- 2025年度跨境電商全職聘用合同2篇
- 2024年重慶護(hù)理職業(yè)學(xué)院高職單招語文歷年參考題庫含答案解析
- 2025-2030年中國力敏器件市場規(guī)模分析與投資策略建議報告
- 二零二五年度高品質(zhì)生活配套房屋租賃服務(wù)合同6篇
- 2025-2030年中國冶金專用設(shè)備制造行業(yè)發(fā)展?fàn)顩r及投資戰(zhàn)略研究報告
- 二零二五年度綠色環(huán)保產(chǎn)品采購及推廣合同3篇
- 2025年中圖版選擇性必修1英語上冊階段測試試卷含答案
- 2025-2030年中國休閑女包市場發(fā)展現(xiàn)狀及前景趨勢分析報告
- 2025-2030年中國ITO靶材行業(yè)發(fā)展現(xiàn)狀及投資前景分析報告
- 2024年高標(biāo)準(zhǔn)農(nóng)田建設(shè)土地承包服務(wù)協(xié)議3篇
- 閱讀理解(專項訓(xùn)練)-2024-2025學(xué)年湘少版英語六年級上冊
- 無創(chuàng)通氣基本模式
- 飛行原理(第二版) 課件 第4章 飛機(jī)的平衡、穩(wěn)定性和操縱性
- 暨南大學(xué)珠海校區(qū)財務(wù)辦招考財務(wù)工作人員易考易錯模擬試題(共500題)試卷后附參考答案
- 羊水少治療護(hù)理查房
- 2024年全國統(tǒng)一高考英語試卷(新課標(biāo)Ⅰ卷)含答案
- OQC培訓(xùn)資料教學(xué)課件
- 2024年8月CCAA國家注冊審核員OHSMS職業(yè)健康安全管理體系基礎(chǔ)知識考試題目含解析
- 2024年認(rèn)證行業(yè)法律法規(guī)及認(rèn)證基礎(chǔ)知識 CCAA年度確認(rèn) 試題與答案
- 體育賽事組織與實施操作手冊
評論
0/150
提交評論