最近了解了基于javaweb的课堂考勤管理系统项目,在这个平台记录一下这个基于javaweb的课堂考勤管理系统项目,方便以后再次使用或学习的时候能够及时的翻阅。在完成基于javaweb的课堂考勤管理系统项目的时候,考虑了很多框架。最终决定选用SSM(MYECLIPSE),该框架具有极强的移植性,多平台性,便于操作性等优点。此框架能在MYECLIPSE开发工具中完美的编写和运行,基于javaweb的课堂考勤管理系统为一个 后台项目采用当前非常流行的B/S体系结构,以JAVA作为开发技术,主要依赖SSM技术框架,mysql数据库建立本系统。本系统实现了在线请假,查看考勤,统计考勤,随机点名,考勤信息的录入等功能,既可减轻教师的教学压力,也可以让学生轻松掌握自己的考勤情况,解决了学生考勤麻烦、请假不便捷,统计考勤困难等问题。
在对基于javaweb的课堂考勤管理系统项目进行需求分析的时候,得出系统的登录角色包括了管理员、用户。对应用户可以通过登录自己的账号,进行入系统。系统对不同角色拥有不同权限。
总结得出基于javaweb的课堂考勤管理系统项目所有数据为:管理员(admin)、用户(yonghu)、学生(xuesheng)、考勤(kaoqin)
基于javaweb的课堂考勤管理系统之管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
基于javaweb的课堂考勤管理系统之用户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码 xingming | VARCHAR(255) | | 姓名 zhiwu | VARCHAR(255) | | 职务
基于javaweb的课堂考勤管理系统之学生表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 学生id xingming | VARCHAR(255) | | 姓名 nianji | VARCHAR(255) | | 年级 xingbie | VARCHAR(255) | | 性别
基于javaweb的课堂考勤管理系统之考勤表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 考勤id kuangkecishu | VARCHAR(255) | | 旷课次数 quanqin | VARCHAR(255) | | 全勤 qingjiarenshu | VARCHAR(255) | | 请假人数
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggjyjavawebdktkqglxt -- ---------------------------- DROP TABLE IF EXISTS `t_admin`; CREATE TABLE `t_admin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '管理员id',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员'; -- ---------------------------- DROP TABLE IF EXISTS `t_yonghu`; CREATE TABLE `t_yonghu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',`xingming` VARCHAR(255) DEFAULT NULL COMMENT '姓名',`zhiwu` VARCHAR(255) DEFAULT NULL COMMENT '职务',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='用户'; -- ---------------------------- DROP TABLE IF EXISTS `t_xuesheng`; CREATE TABLE `t_xuesheng` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '学生id',`xingming` VARCHAR(255) DEFAULT NULL COMMENT '姓名',`nianji` VARCHAR(255) DEFAULT NULL COMMENT '年级',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='学生'; -- ---------------------------- DROP TABLE IF EXISTS `t_kaoqin`; CREATE TABLE `t_kaoqin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '考勤id',`kuangkecishu` VARCHAR(255) DEFAULT NULL COMMENT '旷课次数',`quanqin` VARCHAR(255) DEFAULT NULL COMMENT '全勤',`qingjiarenshu` VARCHAR(255) DEFAULT NULL COMMENT '请假人数',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='考勤';
添加考勤模块:
系统中存在添加考勤功能,通过点击添加考勤可以跳转到该功能模块,在该功能模块中,填写对应的考勤信息。考勤包含信息旷课次数,全勤,请假人数,填写完所有信息后,通过post方法将数据提交到tianjiakaoqin.action中,该地址将在服务器中kaoqinController类中的tianjiakaoqinact方法中进行响应。响应结果为,获取所有的考勤信息,封装一个kaoqin类,使用kaoqinController类中定义的kaoqindao的insert方法,将考勤数据插入到数据库的kaoqin表中。并给出用户提示信息,添加考勤成功,将该信息保存到request的message中,该信息将在页面中进行展示。该部分核心代码如下:
通过kaoqindao的insert方法将页面传输的考勤添加到数据库中 kaoqindao.insert(kaoqin);
将添加考勤成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加考勤成功");
返回考勤管理界面
return "forward:/tianjiakaoqin.action";
查询考勤模块:
在后台中定义考勤查询模块,在侧边栏中点击考勤管理,可以跳转到考勤管理界面。在该页面中通过kaoqinController中定义kaoqinguanli响应考勤查询模块。在kaoqinguanli中查询出所有信息,返回页面进行循环展示。查询方法为kaoqindao中的selectByexample方法。该部分核心代码如下:
生成考勤样例类,通过example定义查询条件 KaoqinExample example = new KaoqinExample();
通过kaoqindao的selectByExample方法查询出所有的考勤信息 List kaoqinall = kaoqindao.selectByExample(example);
将考勤信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("kaoqinall", kaoqinall);
返回考勤管理界面
return "forward:/kaoqinguanli.action";
修改考勤模块:
对已经上传的考勤信息可以进行修改操作,该部分操作在考勤管理界面中点击修改按钮可以跳转到考勤修改页面。在修改页面中,将初始化所有的考勤字段信息,字段信息包括旷课次数,全勤,请假人数。字段信息内容通过考勤id获取。修改后的信息传入到kaoqinController中接收为kaoqin。在kaoqinController中包含有提前定义好的kaoqindao,该参数为kaoqinMapper是实现。kaoqinMapper中定义了修改方法,此处使用修改方法为updateByPrimaryKeySelective,该方法可以将修改后信息同步到数据库中,最终将修改成功信息返回页面中。该部分代码如下:
通过kaoqindao的修改方法根据id修改对应的考勤 kaoqindao.updateByPrimaryKeySelective(kaoqin);
将修改考勤成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改考勤信息成功");
返回考勤管理界面
return "forward:/kaoqinguanli.action";
删除考勤模块:
删除考勤功能实现在kaoqinController中,实现方法为shanchukaoqin。在页面中通过get方法shanchukaoqin.action?Id的形式将需要删除的考勤id上传到服务器中,响应对应的方法,调用kaoqindao中的deleteByPrimaryKey方法,完成删除操作。将删除成功的提示信息返回到页面中,完成删除数据的操作。该部分核心代码:
通过kaoqindao的删除方法根据id删除对应的考勤 kaoqindao.deleteByPrimaryKey(id);
将删除考勤成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除考勤成功");
返回考勤管理界面
return "forward:/kaoqinguanli.action";