表3-3-2.6 请假记录表
字段 Qj_Id Student_Id Apply_Time Start_Time Qj_Days Qj_Reason Apply_State
数据类型 int varchar datetime datetime varchar varchar char
长度 — 20 — — 10 100 2
是否为空
N Y Y Y Y Y N
规则 主键,自增
— — — — — 默认值为否
中文说明 假条编号 学生学号 申请时间 假期开始时间 请假天数 请假原因 审批状态
表3-3-2.7学生考勤记录表
字段 Kq_Id Student_Id Teacher_Id Student_Name Class_Id Kq_Time Kq_State Course_Name
数据类型 int varchar varchar datetime datetime varchar varchar char
长度 — 20 20 — — 10 100 2
是否为空
N Y Y Y Y Y Y N
规则 主键,自增
— — — — — — 默认值为否
中文说明
考勤记录编号 学生学号 任课老师编号 学生姓名 班级编号 考勤时间 考勤状态 课程名称
29
3.3.3数据库表联系图
30
4大学生考勤系统详细设计
4.1数据库连接
为了使更加方便和统一连接和使用数据库,特意把连接数据库的代码写成函数。关键的代码如下:
package com.db; import java.sql.*; public class DBHelper {
/***一个静态方法,返回一个数据库的连接。
*这样达到了对数据库连接统一控制的目的。 */
private String
dbUrl=\;
private String dbUser=\; private String dbPassword=\; private String
jdbcName=\;
public Connection getConn(){
Connection conn = null; try{ }
catch(Exception e){} try{
Class.forName(jdbcName);
conn=DriverManager.getConnection(dbUrl,dbUser,dbPassword); } }
31
}
catch(SQLException ex){} return conn;
4.2系统关键功能模块的实现
4.2.1系统用户登录
系统分为四个角色权限登录,用户通过输入用户名、对应的密码并选择相应的权限,就根据角色的不同进入到不同的管理界面。登录功能流程图如下图4-2-1.1:
开始登录输入用户id、密码、登录类型N是否正确Y登录到相应用户的主界面结束
图4-2-1.1用户登录
此外只要在浏览器中输入http://localhost:8080/kq 就能打开系统的登录页面,而系统登录界面为默认的所有用户登录界面。例如管理员登录以及 主界面实现截图,如下图4-2-1.2:
管理员主界面:
图4-2-1.2管理员主界面
4.2.2 任课教师在线考勤
管理员录入学生、班级、辅导员、任课教师信息以及任课教师课程信息,任课教师登录自己账号,通过查询班级id找到自己要考勤的班级,然后去学生进行考勤。具体流程图如下图4-2-2.1:
32
开始任课教师登录在线考勤查询班级显示该班级的全部学生对学生进行考勤操作结束 图4-2-2.1任课老师考勤流程图
实现界面截图如下图4-2-2.2:
图4-2-2.2任课老师考勤界面
具体代码实现如下:
public String listStudentsByPage() throws Exception { if(pageNow==0){ pageNow = 1; }
classes = new ClassService().list(); if (StringUtils.isEmpty(Class_Id)) {
Class_Id = classes.get(0).getClass_Id(); }
pageCount = (new
StudentService().count(Integer.parseInt(Class_Id))-1)/pageSize+1;
int begin = (pageNow-1)*pageSize;
33