职工考勤管理系统的研究设计与实现.docx

上传人:b****3 文档编号:18650947 上传时间:2023-08-24 格式:DOCX 页数:19 大小:2.86MB
下载 相关 举报
职工考勤管理系统的研究设计与实现.docx_第1页
第1页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第2页
第2页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第3页
第3页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第4页
第4页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第5页
第5页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第6页
第6页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第7页
第7页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第8页
第8页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第9页
第9页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第10页
第10页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第11页
第11页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第12页
第12页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第13页
第13页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第14页
第14页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第15页
第15页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第16页
第16页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第17页
第17页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第18页
第18页 / 共19页
职工考勤管理系统的研究设计与实现.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

职工考勤管理系统的研究设计与实现.docx

《职工考勤管理系统的研究设计与实现.docx》由会员分享,可在线阅读,更多相关《职工考勤管理系统的研究设计与实现.docx(19页珍藏版)》请在冰点文库上搜索。

职工考勤管理系统的研究设计与实现.docx

职工考勤管理系统的研究设计与实现

 

职工考勤管理系统

姓名:

班级:

学号:

学院:

 

职工考勤管理系统的设计与实现

一、系统介绍:

管理员可通过登录名与密码进入考勤系统,可以通过职工编号来进行对各别员工的查询,进行考勤,也可以查看全体员工的考勤情况,还可以进行添加,删除等操作。

矚慫润厲钐瘗睞枥庑赖。

二、系统设计:

2.1根据系统功能,可以画出如下流程图:

添加操作,删除操作

查询操作

用户验证

管理员登陆

 

针对职工管理系统的流程图,现具体描述其功能:

1、管理员登陆:

系统对其合法性进行检查

2、职工个人考勤:

通过职工编号查询其信息

3、全体职工考勤:

查看全体职工信息

4、添加操作:

添加职工的各种基本信息

5、删除操作:

根据职工编号删除某个职工的全部信息

2.2数据库的逻辑设计

根据系统的功能可以设计有关的概念模型,该系统涉及一张职工考勤信息表,可以画出如下E-R图:

 

2.2.1:

管理员实体E-R图:

密码

2.2.2:

职工实体E-R图:

职工

出差次数

 

2.2.3:

数据库设计:

1.启动SQLServer2005

2.建立数据库

打开企业管理器,新建数据库Student

3.创建表kaoqing,kaoqing表的字段的属性为:

Kaoqing表如下所示:

三、系统的实现:

3.1数据库的连接:

1.创建ODBC数据源:

选择“控制面板”——“管理工具”——“ODBC数据源”,在双击ODBC数据源后,选择“用户DSN”,添加新的数据源,单击“配置”,选择SQLServer,数据源名称为mymoon,设置用户名为sa,密码为163123,选择数据库Student。

聞創沟燴鐺險爱氇谴净。

2.建立JDBC-ODBC桥接器:

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”)。

建立桥接器时可能发生异常,为捕获这个异常,所以建立桥接器的标准为:

残骛楼諍锩瀨濟溆塹籟。

Try{Class.forName(“sun.jdbc.odbc.JdbcOdbcDrivder”)。

}酽锕极額閉镇桧猪訣锥。

Catch(ClassNotFoundExceptione){}

3.与ODBC数据源指定的数据库建立连接:

使用java.sql包中的Connection类声明一个对象,然后使用类DriverManager调用它的一个静态方法getConnection创建这个连接对象,con=DriverManager.getConnection("jdbc:

odbc:

mymoon","sa","163123")。

捕获异常为彈贸摄尔霁毙攬砖卤庑。

try{con=DriverManager.getConnection("jdbc:

odbc:

mymoon","sa","163123")。

}catch(SQLExceptione){}謀荞抟箧飆鐸怼类蒋薔。

3.2系统实现:

1用户登录

当用户登陆时,首先出现的是一个登陆页面,只有输入正确的管理员姓名与密码时,才能进入考勤系统。

关键代码如下:

厦礴恳蹒骈時盡继價骚。

登陆页面

charset=UTF-8">茕桢广鳓鯡选块网羈泪。

欢迎进入职工考勤管理系统!

//转页到check.jsp鹅娅尽損鹌惨歷茏鴛賴。

页面

 。

 。

 。

管理员:

密码:

如下图3.2.1所示:

2.用户检查

对输入的管理员姓名与密码进行检查,如若正确,则转到考勤页面,若不正确,则返回到登陆页面,再次输入姓名与密码,直至正确。

代码如下:

籟丛妈羥为贍偾蛏练淨。

<%@pagecontentType="text/html"pageEncoding="UTF-8"%>預頌圣鉉儐歲龈讶骅籴。

charset=UTF-8">渗釤呛俨匀谔鱉调硯錦。

JSPPage

<%

Stringname=request.getParameter("name")。

Stringpassword=request.getParameter("number")。

if(name.equals("shenyan")||password.equals("08260021"))铙誅卧泻噦圣骋贶頂廡。

{//检查管理员姓名与密码是否正确

%>

forwardpage="sucess.jsp"/>//正确,跳转到考勤页面

<%

}

else

{

%>

forwardpage="form.html"/>//不正确,返回到登陆页面

<%

}

%>

如下图3.2.2所示:

3.按职工编号考勤:

输入职工编号,可以通过调用bean来取得数据库中信息,并显示出来。

关键代码如下:

<%@pagecontentType="text/html"pageEncoding="UTF-8"%>擁締凤袜备訊顎轮烂蔷。

<%@pageimport="tom.jiafei.ConditionQuery"%>

useBeanid="database"class="tom.jiafei.ConditionQuery"scope="request"/>贓熱俣阃歲匱阊邺镓騷。

setPropertyname="database"property="number"param="number"/>坛摶乡囂忏蒌鍥铃氈淚。

根据职工编

getPropertyname="database"property="number"/>蜡變黲癟報伥铉锚鈰赘。

查询到的考勤记录


getPropertyname="database"property="queryResultByNumber"/>買鲷鴯譖昙膚遙闫撷凄。

ConditonQuery.java的部分代码如下:

packagetom.jiafei。

importjava.sql.*。

publicclassConditionQuery{

Stringnumber。

//职工编号

StringBufferqueryResultByNumber。

publicConditionQuery(){

queryResultByNumber=newStringBuffer()。

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")。

//建立一个JDBC-ODBC桥接器綾镝鯛駕櫬鹕踪韦辚糴。

}catch(ClassNotFoundExceptione){}//捕获建立桥接器时的异常

}

//

privateStringBufferf(Stringcondition){

StringBufferstr=newStringBuffer()。

Connectioncon。

Statementsql。

ResultSetrs。

try{

con=DriverManager.getConnection("jdbc:

odbc:

mymoon","sa","163123")。

//连接数据库驅踬髏彦浃绥譎饴憂锦。

sql=con.createStatement()。

rs=sql.executeQuery(condition)。

str.append("")。

str.append(""+"职工编号")。

str.append(""+"职工姓名")。

str.append(""+"所在部门")。

str.append(""+"性别")。

str.append(""+"缺勤次数")。

str.append(""+"请假次数")。

str.append(""+"出差次数")。

while(rs.next()){

str.append("")。

str.append(""+rs.getString

(1)+"")。

str.append(""+rs.getString

(2)+"")。

str.append(""+rs.getString(3)+"")。

str.append(""+rs.getString(4)+"")。

str.append(""+rs.getString(5)+"")。

str.append(""+rs.getString(6)+"")。

str.append(""+rs.getString(7)+"")。

str.append("")。

}

str.append("")。

con.close()。

}catch(SQLExceptione){str.append(e)。

}

returnstr。

}

其结果如下图3.2.3所示:

4.查看全体职工考勤记录

关键代码如下:

<%@pagecontentType="text/html"pageEncoding="UTF-8"%>猫虿驢绘燈鮒诛髅貺庑。

<%@pageimport="java.sql.*"%>

<%

Connectioncon。

Statementsql。

ResultSetrs。

try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")。

锹籁饗迳琐筆襖鸥娅薔。

}catch(ClassNotFoundExceptione){out.print(e)。

}//捕获建立桥接器时的异常

try{con=DriverManager.getConnection("jdbc:

odbc:

mymoon","sa","163123")。

構氽頑黉碩饨荠龈话骛。

sql=con.createStatement()。

rs=sql.executeQuery("SELECT*FROMkaoqing")。

out.print("")。

out.print(""+"职工编号")。

while(rs.next()){

out.print("")。

out.print(""+rs.getString

(1)+"")。

out.print("")。

}

out.print("")。

con.close()。

}catch(SQLExceptione1){

out.print(e1)。

}

%>

其查询结果如下图3.2.4所示:

5.添加职工信息操作

此操作用到了addbean和querybean,其中querybean帮助其查询kaoqing表中的记录;而addbean是add.jsp调用它把信息添加到kaoqingbiao中,关键代码如下:

輒峄陽檉簖疖網儂號泶。

add.jsp的部分代码:

<%@pageimport="tom.jiafei.QueryBean"%>

<%@pageimport="tom.jiafei.addBean"%>

useBeanid="look"class="tom.jiafei.QueryBean"scope="request"/>尧侧閆繭絳闕绚勵蜆贅。

useBeanid="add"class="tom.jiafei.addBean"scope="request"/>识饒鎂錕缢灩筧嚌俨淒。

setPropertyname="look"property="ODBCDataSource"value="mymoon"/>凍鈹鋨劳臘锴痫婦胫籴。

setPropertyname="look"property="tableName"value="kaoqing"/>恥諤銪灭萦欢煬鞏鹜錦。

setPropertyname="look"property="user"value="sa"/>鯊腎鑰诎褳鉀沩懼統庫。

setPropertyname="look"property="secret"value="163123"/>硕癘鄴颃诌攆檸攜驤蔹。


输入职工编号:

阌擻輳嬪諫迁择楨秘騖。

setPropertyname="add"property="*"/>


您的操作结果:

getPropertyname="add"property="addMessage"/>氬嚕躑竄贸恳彈瀘颔澩。

数据库当前的数据记录是:

getPropertyname="look"property="queryResult"/>釷鹆資贏車贖孙滅獅赘。

Addbean的关键代码:

publicStringgetAddMessage(){

Stringstr=""。

Connectioncon。

Statementsql。

try{

con=DriverManager.getConnection("jdbc:

odbc:

mymoon","sa","163123")。

怂阐譜鯪迳導嘯畫長凉。

StringinsertCondition="insertintokaoqing(职工编号,职工姓名,所在部门,性别,缺勤次数,请假次数,出差次数)"+"values('"+number+"','"+name+"','"+department+"','"+sex+"','"+queq+"','"+qingj+"','"+chuc+"')"。

谚辞調担鈧谄动禪泻類。

sql=con.createStatement()。

if(number!

=null){

intm=sql.executeUpdate(insertCondition)。

if(m!

=0){

str="对表中添加"+m+"条记录成功"。

}else{

str="添加失败"。

}

}else{

str="必须要有员工号"。

}

con.close()。

}catch(SQLExceptione){

str="输入的员工号不允许有重复"+e。

}

returnstr。

}

}

添加结果如3.3.5所示:

6.删除职工信息

与添加操作基本相同,关键代码如下:

Delete.jsp部分代码:

<%@pageimport="tom.jiafei.QueryBean"%>

<%@pageimport="tom.jiafei.delBean"%>

useBeanid="look"class="tom.jiafei.QueryBean"scope="request"/>嘰觐詿缧铴嗫偽純铪锩。

useBeanid="del"class="tom.jiafei.delBean"scope="request"/>熒绐譏钲鏌觶鷹緇機库。

setPropertyname="look"property="ODBCDataSource"value="mymoon"/>鶼渍螻偉阅劍鲰腎邏蘞。

setPropertyname="look"property="tableName"value="kaoqing"/>纣忧蔣氳頑莶驅藥悯骛。

setPropertyname="look"property="user"value="sa"/>颖刍莖蛺饽亿顿裊赔泷。

setPropertyname="look"property="secret"value="163123"/>濫驂膽閉驟羥闈詔寢賻。


输入要删除的员工号:

銚銻縵哜鳗鸿锓謎諏涼。


setPropertyname="del"property="*"/>



您的更新操作结果:

getPropertyname="del"property="delMessage"/>挤貼綬电麥结鈺贖哓类。

数据库当前的数据记录是:

getPropertyname="look"property="queryResult"/>赔荊紳谘侖驟辽輩袜錈。

Deletebean的关键代码如下:

publicStringgetDelMessage(){

Stringstr=""。

Connectioncon。

Statementsql。

StringdelCondition="deletefromkaoqingwhere职工编号='"+number+"'"。

塤礙籟馐决穩賽釙冊庫。

try{

con=DriverManager.getConnection("jdbc:

odbc:

mymoon","sa","163123")。

裊樣祕廬廂颤谚鍘羋蔺。

sql=con.createStatement()。

if(number!

=null){

intm=sql.executeUpdate(delCondition)。

if(m!

=0){

str="对表中删除"+m+"条记录成功"。

}else{

str="删除失败"。

}

}else{

str="必须指定要删除的员工号"。

}con.close()。

}catch(SQLExceptione){str="员工号不存在"。

}returnstr。

仓嫗盤紲嘱珑詁鍬齊驁。

}

}

操作结果如3.2.6所示:

四.总结:

这个系统是职工考勤管理系统,要求对职工进行出勤,缺勤等

的考查,另外还带有添加,删除等操作,所以一开始设计这个系统

感到没有头绪,不得要领,并且没有足够的知识来运用,于是查找了

很多的书籍,希望能有所帮助。

随着课程的进行,对JSP的了解也日

益增加,能够把系统的部分功能渐渐的写出来了。

在此过程中也出现

了一些困难,比如连接数据库,一开始的时候不会连接,后来参考了

书籍,按照书上的方法才连接成功,使得JSP程序与数据源取得了连

系;还有就是在写添加操作这个功能时,也遇到了一点麻烦,总是出

现乱码,后来在包里又新建了一个java类,写了控制乱码的语句才

使添加功能正常运行了。

在这次课程设计中,虽然系统完成了,但还是有不足的地方。

写程序时,有些地方应该用到的语句不懂,所以只能用自己会的来编

写,从而放弃了最适宜的语句,使得整个程序有了些瑕疵。

这让我明

白了一门课程还是要完全掌握吃透了才行啊。

总的来说,这次职工考勤管理系统的设计与实现完成了。

 

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2