人力资源管理系统设计说明书Word文档格式.docx

上传人:b****5 文档编号:18834141 上传时间:2023-01-01 格式:DOCX 页数:50 大小:2.50MB
下载 相关 举报
人力资源管理系统设计说明书Word文档格式.docx_第1页
第1页 / 共50页
人力资源管理系统设计说明书Word文档格式.docx_第2页
第2页 / 共50页
人力资源管理系统设计说明书Word文档格式.docx_第3页
第3页 / 共50页
人力资源管理系统设计说明书Word文档格式.docx_第4页
第4页 / 共50页
人力资源管理系统设计说明书Word文档格式.docx_第5页
第5页 / 共50页
点击查看更多>>
下载资源
资源描述

人力资源管理系统设计说明书Word文档格式.docx

《人力资源管理系统设计说明书Word文档格式.docx》由会员分享,可在线阅读,更多相关《人力资源管理系统设计说明书Word文档格式.docx(50页珍藏版)》请在冰豆网上搜索。

人力资源管理系统设计说明书Word文档格式.docx

此软件系统任务开发者:

“一Ja人”小组

此软件系统任务用户:

暂无

1.3基线

人力资源管理系统需求分析说明书v1.0

1.4定义

专门术语

Entity:

实体

UserProfile:

用户的详细信息

Reeducation:

再教育

ReferPeople:

家庭成员

JobHistory:

职位变更的历史记录

Recommendation:

推荐

系统:

若未特别指出,统指本机预定系统。

1.5参考资料

序号

文件名

文件编号

发表日期

出版单位或作者

1

《C#编码规范》

2

《HRM系统需求说明书》

2005-3-03

张咏勤

3

《HRM概要设计说明书》

2006-4-6

4

《详细设计说明书》

5

《软件开发计划》

6

用户操作手册

7

《JavaWeb整合开发·

王者归来》

1.6术语与缩写解释

缩写、术语

解释

SPP

精简并行过程,SimplifiedParallelProcess

SD

系统设计,SystemDesign

BLL

业务逻辑层

DAL

数据访问层

SQLSERVER

系统服务器所使用的数据库管理系统。

SQL

StructuredQueryLanguage一种用于访问查询数据库的语言

事务流

数据进入模块后可能有多种路径进行处理。

主键

数据库表中的关键域。

值互不相同。

外部主键

数据库表中与其它表的主键关联的域。

HTML

(HyperTextMarkupLanguage超文本标识语言)

模块命名规则

编号

模块名称

模块标识

人事信息管理

1.1

基本信息管理

User

1.2

详细信息管理

UserProfile

1.3

工作经验信息管理

Experience

1.4

项目经验信息管理

Project

1.5

技能信息管理

Skill

职位变更

2.1

职位空缺登记

Vacancy

2.2

简历信息

同人事信息管理各模块

2.3

面试相关信息

Interview

2.4

领导审批

2.5

录用情况

JobHistory

系统管理

3.1

部门管理

Department

3.2

职位管理

Position

3.3

密码修改

2总体设计

2.1概述

2.1.1功能描述

系统包括的范围:

为便于公司高层对员工进行系统的管理,首先由管理员为各部门相关管理人员分配用户名、初始密码。

人事部门需把员工信息(包括:

员工编号、姓名、性别、出生日期、民族、政治面貌、职务、部门、基本工资、备注),招聘计划(包括:

招聘时间、部门、人数、要求),奖惩情况,考试管理,输入到系统的客户端程序,财务部门根据员工一段时间来的工作日来把员工的工资信息(包括:

员工编号、姓名、性别、部门号、基本工资、浮动工资、交通补贴、通讯补贴、常规、午餐补贴、车补、福利、扣除、应发工资)输入到系统的客户端程序。

要求系统能有效、快速、安全、可靠和无误的完成上述操作。

2.1.2运行环境

系统将由两部分程序组成,安装在公司各部门客户机上的客户程序及公司内的数据服务器程序。

2.1.2.1软件环境

分类

名称

版本

语种

操作系统

WindowsXPVistaWIN7

简体中文

操作系统的附加功能

SP4

数据库平台

Oracle

10g

数据库平台补丁

应用平台

tomcat

5.5.x

应用平台补丁

邮件系统

Foxmail

4.2.0

客户端软件

MSIE

6.0

2.1.2.2硬件环境

服务器

最低配置

推荐配置

应用和数据库服务器

1CPU:

P42.0G

P42.8G

邮件服务器

2.1.3开发环境

MyEclipse、VisualAgeforJava、Fortefor

Java,VisualCafe、Eclipse、NetBeansIDE、JCreator+J2SDK、jdk+记事本、EditPl

us+J2SDK等等。

2.1.3.1服务器软件环境

WindowsXPWIN7

版本控制系统

目录服务系统

2.1.3.2服务器硬件环境

应用服务器、数据库服务器、邮件服务器、目录服务器

2.1.3.3开发机器软件环境

7600

5.0

开发平台

MyEclipse

7.0

2.1.3.4开发机器硬件环境

开发机器

2.2设计思想

2.2.1系统构思

2.2.2关键技术与算法

主要采用SQL复制技术进行大量数据同步,并且结合SQL技术进行数据筛选,使传输到移动设备数据达到最小,实际情况中网络状况的不稳定性时,无法利用SQLServer数据复制机制,不能及时将移动设备中征稽系统所有信息传输到中心服务器,在这种情况下,采用XML传输文件同步方式,网络故障时我们把XML数据利用存储设备拷贝到实际中心服务器.在服务器端解析XML文件,把信息传输到服务器。

快速排序,排人的工资,按姓名排序(字母序)。

链表的使用,用链表存人的信息,实现增删改查。

(如果是数据库系统就不能了)。

加密算法。

哈弗曼编码,把信息编码输出保存,也可以解密。

1.连接数据库

publicclassConnDb{

privateConnectionct=null;

publicConnectiongetConn(){

try{

Class.forName("

oracle.jdbc.driver.OracleDriver"

);

ct=DriverManager.getConnection("

jdbc:

oracle:

thin:

@127.0.0.1:

1521:

ORCL"

"

scott"

tiger"

}catch(Exceptione){

e.printStackTrace();

}

returnct;

}

}

2.分页算法

publicclassPageSet{

privatePreparedStatementps=null;

privateResultSetrs=null;

privateintpageSize=7;

//每页显示多少条记录

privateintrowCount=0;

//总记录数

privateintpageCount=0;

//总页面

publicintgetPageCount(){

ct=newConnDb().getConn();

//得到连接

ps=ct.prepareStatement("

selectcount(*)fromstaff"

rs=ps.executeQuery();

if(rs.next()){

rowCount=rs.getInt

(1);

if(rowCount%pageSize==0){

pageCount=rowCount/pageSize;

}else{

pageCount=rowCount/pageSize+1;

}

}

}finally{

try{

if(rs!

=null){

rs.close();

rs=null;

if(ps!

ps.close();

ps=null;

if(ct!

ct.close();

ct=null;

}catch(Exceptione2){

//TODO:

handleexception

e2.printStackTrace();

returnpageCount;

intpageCount=newPageSet().getPageCount();

//分页算法

if(pageNow!

=1){

out.print("

<

ahref=wel.jsp?

pageNow="

+1+"

>

首&

nbsp页<

/a>

"

+(pageNow-1)+"

&

nbsp上一页<

if(pageNow==1||pageNow==2){

for(inti=1;

i<

=5;

i++){

+i+"

["

]<

}elseif(pageNow==pageCount){

for(inti=pageNow-4;

=pageNow;

}elseif(pageNow==pageCount-1){

for(inti=pageNow-3;

=pageNow+1;

}else{

for(inti=pageNow-2;

=pageNow+2;

=pageCount){

+(pageNow+1)+"

下一页<

+pageCount+"

nbsp尾&

3.上传:

packagecom.inmsg.beans;

importjava.io.*;

importjava.util.*;

importjavax.servlet.*;

importjavax.servlet.http.*;

publicclassUpload{

privateStringsaveDir="

."

;

//要保存文件的路径

privateStringcontentType="

//文档类型

privateStringcharset="

//字符集

privateArrayListtmpFileName=newArrayList();

//临时存放文件名的数据结构

privateHashtableparameter=newHashtable();

//存放参数名和值的数据结构

privateServletContextcontext;

//程序上下文,用于初始化

privateHttpServletRequestrequest;

//用于传入请求对象的实例

privateStringboundary="

//内存数据的分隔符

privateintlen=0;

//每次从内在中实际读到的字节长度

privateStringqueryString;

privateintcount;

//上载的文件总数

privateString[]fileName;

//上载的文件名数组

privatelongmaxFileSize=1024*1024*10;

//最大文件上载字节;

privateStringtagFileName="

publicfinalvoidinit(HttpServletRequestrequest)throwsServletException{

this.request=request;

boundary=request.getContentType().substring(30);

//得到内存中数据分界符

queryString=request.getQueryString();

publicStringgetParameter(Strings){//用于得到指定字段的参数值,重写request.getParameter(Strings)

if(parameter.isEmpty()){

returnnull;

return(String)parameter.get(s);

publicString[]getParameterValues(Strings){//用于得到指定同名字段的参数数组,重写request.getParameterValues(Strings)

ArrayListal=newArrayList();

Enumeratione=parameter.keys();

while(e.hasMoreElements()){

Stringkey=(String)e.nextElement();

if(-1!

=key.indexOf(s+"

||||||||||"

)||key.equals(s)){

al.add(parameter.get(key));

if(al.size()==0){

String[]value=newString[al.size()];

for(inti=0;

i〈value.length;

i++){

value[i]=(String)al.get(i);

returnvalue;

publicStringgetQueryString(){

returnqueryString;

publicintgetCount(){

returncount;

publicString[]getFileName(){

returnfileName;

publicvoidsetMaxFileSize(longsize){

maxFileSize=size;

publicvoidsetTagFileName(Stringfilename){

tagFileName=filename;

publicvoidsetSaveDir(StringsaveDir){//设置上载文件要保存的路径

this.saveDir=saveDir;

Filetestdir=newFile(saveDir);

//为了保证目录存在,如果没有则新建该目录

if(!

testdir.exists()){

testdir.mkdirs();

publicvoidsetCharset(Stringcharset){//设置字符集

this.charset=charset;

publicbooleanuploadFile()throwsServletException,IOException{//用户调用的上载方法

setCharset(request.getCharacterEncoding());

returnuploadFile(request.getInputStream());

privatebooleanuploadFile(ServletInputStreamservletinputstream)throws//取得央存数据的主方法

ServletException,IOException{

Stringline=null;

byte[]buffer=newbyte[256];

while((line=readLine(buffer,servletinputstream,charset))!

=null){

if(line.startsWith("

Content-Disposition:

form-data;

"

)){

inti=line.indexOf("

filename="

if(i〉=0){//如果一段分界符内的描述中有filename=,说明是文件的编码内容

StringfName=getFileName(line);

if(fName.equals("

continue;

if(count==0&

tagFileName.length()!

=0){

Stringext=fName.substring((fName.lastIndexOf("

)+1));

fName=tagFileName+"

+ext;

tmpFileName.add(fName);

count++;

if(line.length()〈=2){

break;

Filef=newFile(saveDir,fName);

FileOutputStreamdos=newFileOutputStream(f);

longsize=0l;

while((line=readLine(buffer,servletinputstream,null))!

if(line.indexOf(boundary)!

=-1){

size+=len;

if(size〉maxFileSize){

thrownewIOException("

文件超过"

+maxFileSize+"

字节!

dos.write(buffer,0,len);

d

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1