作者主页:夜未央5788
简介:Java领域优质创作者、Java项目、学习资料、技术互助
文末获取源码
项目介绍
功能:
学生考勤管理系统共分为三种角色,分别是 系统管理员、教师、学生。
系统管理员主要功能包括:
可以查看个人信息,可以修改个人信息,如联系方式,所在宿舍,家庭地址,使用状态等。
可以修改密码
可以对班级进行管理,包括班级的增删改查,班级包括属性 院系、专业、班级名称、班级编号
课程管理,包括课程的增删改查
用户管理:包括用户的增删改查,用户权限、是否使用状态
课程表管理:包括课程表的增删改查,课程表的新增是根据班级管理和课程管理进行匹配而来
教师角色主要功能:
可以查看课程表
对学生进行请假管理,可对请假条进行增删改查功能,同时对学生请假条进行审批,分为通过和拒绝
对学生进行考勤管理,可对考勤进行增删改查功能,记录是否旷课等
学生角色主要功能:
可以查看课程表
进行请假管理,可对请假条进行增删改查功能,
查看考勤记录情况
由于本程序规模不大,可供课程设计,毕业设计学习演示之用
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.是否Maven项目: 否;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目
6.数据库:MySql 5.7版本;
技术栈
1. 后端:spring+struts+hibenate
2. 前端:JSP+easyui+jQuery
使用说明
1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 将项目中proxool.xml配置文件中的数据库配置改为自己的配置;
3. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行;
4. 运行项目,在浏览器中输入http://localhost:8080/ 登录
运行截图
相关代码
KaoQinLogAction
package manage.action;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts2.ServletActionContext;
import manage.dao.BanJiDao;
import manage.dao.KaoQinLogDao;
import manage.dao.SubjectDao;
import manage.dao.UserDao;
import manage.model.KaoQinLog;
import manage.model.User;
import manage.util.Util;
public class KaoQinLogAction {
private static final long serialVersionUID = 7963004028001698964L;
private KaoQinLogDao kaoqinlogDao;
private BanJiDao banjiDao;
private UserDao userDao;
private SubjectDao subjectDao;
public SubjectDao getSubjectDao() {
return subjectDao;
}
public void setSubjectDao(SubjectDao subjectDao) {
this.subjectDao = subjectDao;
}
public UserDao getUserDao() {
return userDao;
}
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
public BanJiDao getBanjiDao() {
return banjiDao;
}
public void setBanjiDao(BanJiDao banjiDao) {
this.banjiDao = banjiDao;
}
public KaoQinLogDao getKaoqinlogDao() {
return kaoqinlogDao;
}
public void setKaoqinlogDao(KaoQinLogDao kaoqinlogDao) {
this.kaoqinlogDao = kaoqinlogDao;
}
@SuppressWarnings("unchecked")
public String kaoqinloglist() throws Exception {
HttpServletRequest request = ServletActionContext.getRequest();
int numPerPage = 20;
int pageNum = 1;
if(request.getParameter("pageNum")!=null && !request.getParameter("pageNum").equals("")){
pageNum = Integer.parseInt(request.getParameter("pageNum"));
}
if(request.getParameter("numPerPage")!=null){
numPerPage = Integer.parseInt(request.getParameter("numPerPage"));
}
HttpSession session = request.getSession();
String role = (String)session.getAttribute("role");
String where = "";
if(!"role0".equals(role)){
String banjinum=(String) session.getAttribute("banjinum");
where = "and banjinum='"+banjinum+"'";
}
if("role4".equals(role)||role=="role4"){
String codenum=(String) session.getAttribute("codenum");
where += " and codenum='"+codenum+"'";
}
int total = kaoqinlogDao.selectAllKaoQinLogCount();
List<KaoQinLog> kaoqinlogs = kaoqinlogDao.selectAllKaoQinLogBy(
(pageNum - 1) * numPerPage, numPerPage,where);
request.setAttribute("totalCount", total);
request.setAttribute("ps", numPerPage);
request.setAttribute("pn", pageNum);
request.setAttribute("kaoqinloglist", kaoqinlogs);
return "success";
}
public String kaoqinlogadd(){
HttpServletRequest request = ServletActionContext.getRequest();
HttpSession session = request.getSession();
String role = (String)session.getAttribute("role");
String where = "";
if(!"role0".equals(role)){
String banjinum=(String) session.getAttribute("banjinum");
where = "and banjinum='"+banjinum+"'";
}
request.setAttribute("banjilist", banjiDao.getAll(where));
request.setAttribute("subjectlist", subjectDao.getAll(""));
return "success";
}
public String kaoqinlogadd2() throws Exception{
HttpServletRequest request = ServletActionContext.getRequest();
KaoQinLog kaoqinlog = new KaoQinLog();
kaoqinlog.setBanjinum(request.getParameter("banjinum"));
kaoqinlog.setCodenum(request.getParameter("codenum"));
kaoqinlog.setIskuangke(Integer.parseInt(request.getParameter("iskuangke")));
kaoqinlog.setKechengname(request.getParameter("kechengname"));
kaoqinlog.setTeacher(request.getParameter("teacher"));
kaoqinlog.setKuangkenum(Integer.parseInt(request.getParameter("kuangkenum")));
kaoqinlog.setRiqi(request.getParameter("riqi"));
kaoqinlog.setCreatetime(new Date());
kaoqinlogDao.insertKaoQinLog(kaoqinlog);
HttpServletResponse resp = ServletActionContext.getResponse();
resp.setCharacterEncoding("utf-8");
PrintWriter out = resp.getWriter();
//out.write(manage.util.Util.outPutMsg("200", "添加成功", "", "", "kaoqinloglist.html"));
out.print("{\"statusCode\":\"200\", \"message\":\"添加成功!\",\"navTabId\":\"kaoqinlogList\", \"rel\":\"kaoqinlogList\", \"callbackType\":\"closeCurrent\",\"forwardUrl\":\"kaoqinlog/kaoqinloglist.html\"}");
out.flush();
out.close();
return null;
}
public String kaoqinlogupdate(){
HttpServletRequest request = ServletActionContext.getRequest();
int id = Integer.parseInt(request.getParameter("id"));
request.setAttribute("bean", kaoqinlogDao.selectKaoQinLog(id));
request.setAttribute("id", id);
request.setAttribute("banjilist", banjiDao.getAll(""));
request.setAttribute("subjectlist", subjectDao.getAll(""));
return "success";
}
public String kaoqinlogupdate2() throws IOException{
HttpServletRequest request = ServletActionContext.getRequest();
HttpServletResponse resp = ServletActionContext.getResponse();
resp.setCharacterEncoding("utf-8");
PrintWriter out = resp.getWriter();
int id = Integer.parseInt(request.getParameter("id"));
KaoQinLog bean = kaoqinlogDao.selectKaoQinLog(id);
if(request.getParameter("banjinum")!=null){
bean.setBanjinum(request.getParameter("banjinum"));
}
if(request.getParameter("codenum")!=null){
bean.setCodenum(request.getParameter("codenum"));
}
if(request.getParameter("iskuangke")!=null){
bean.setIskuangke(Integer.parseInt(request.getParameter("iskuangke")));
}
if(request.getParameter("kechengname")!=null){
bean.setKechengname(request.getParameter("kechengname"));
}
if(request.getParameter("teacher")!=null){
bean.setTeacher(request.getParameter("teacher"));
}
if(request.getParameter("kuangkenum")!=null){
bean.setKuangkenum(Integer.parseInt(request.getParameter("kuangkenum")));
}
if(request.getParameter("riqi")!=null){
bean.setRiqi(request.getParameter("riqi"));
}
kaoqinlogDao.updateKaoQinLog(bean);
//out.write(manage.util.Util.outPutMsg("200", "修改成功", "", "", "kaoqinloglist.html"));
out.print("{\"statusCode\":\"200\", \"message\":\"修改成功!\",\"navTabId\":\"kaoqinlogList\", \"rel\":\"kaoqinlogList\", \"callbackType\":\"closeCurrent\",\"forwardUrl\":\"kaoqinlog///kaoqinloglist.html\"}");
out.flush();
out.close();
return null;
}
public String kaoqinlogdel() throws IOException{
HttpServletRequest request = ServletActionContext.getRequest();
int id = Integer.parseInt(request.getParameter("id"));
kaoqinlogDao.delKaoQinLog(kaoqinlogDao.selectKaoQinLog(id));
HttpServletResponse resp = ServletActionContext.getResponse();
resp.setCharacterEncoding("utf-8");
PrintWriter out = resp.getWriter();
//out.print("{\"statusCode\":\"200\", \"message\":\"删除成功!\",\"navTabId\":\"kaoqinlogList\", \"rel\":\"kaoqinlogList\", \"callbackType\":\"closeCurrent\",\"forwardUrl\":\"kaoqinlog///kaoqinloglist.html\"}");
out.write(manage.util.Util.outPutMsg("200", "修改成功", "kaoqinlogList", "", false, "kaoqinlog///kaoqinloglist.html"));
out.flush();
out.close();
return null;
}
public String searchkaoqin(){
HttpServletRequest request = ServletActionContext.getRequest();
StringBuffer sb = new StringBuffer();
sb.append(" ");
String kechengname="";
if(!"".equals(request.getParameter("kechengname"))&&request.getParameter("kechengname")!=null){
kechengname = request.getParameter("kechengname");
sb.append("and kechengname = '"+kechengname+"'");
}
String codenum="";
if(!"".equals(request.getParameter("codenum"))&&request.getParameter("codenum")!=null){
codenum = request.getParameter("codenum");
sb.append("and codenum = '"+codenum+"'");
}
String banjinum="";
if(!"".equals(request.getParameter("banjinum"))&&request.getParameter("banjinum")!=null){
banjinum = request.getParameter("banjinum");
sb.append("and banjinum = '"+banjinum+"'");
}
String teacher="";
if(!"".equals(request.getParameter("teacher"))&&request.getParameter("teacher")!=null){
teacher = request.getParameter("teacher");
sb.append("and teacher = '"+teacher+"'");
}
String riqi="";
if(!"".equals(request.getParameter("riqi"))&&request.getParameter("riqi")!=null){
riqi = request.getParameter("riqi");
sb.append("and riqi = '"+riqi+"'");
}
String where = sb.toString();
int currentpage = 1;
int pagesize = 50;
if (request.getParameter("pagenum") != null)
currentpage = Integer.parseInt(request.getParameter("pagenum"));
request.setAttribute("kaoqinloglist", kaoqinlogDao.selectAllKaoQinLogBy((currentpage - 1) * pagesize, 50,where));
return "success";
}
@SuppressWarnings("unchecked")
public String kaoqinloglist2() throws Exception {
HttpServletRequest request = ServletActionContext.getRequest();
HttpSession session = request.getSession();
String role = (String)session.getAttribute("role");
StringBuffer sb = new StringBuffer();
sb.append("and role=4 ");
String teacher="";
if("role2".equals(role)||role=="role2"){
teacher=(String) session.getAttribute("username");
request.setAttribute("teacher", teacher);
}else{
if(!"".equals(request.getParameter("teacher"))&&request.getParameter("teacher")!=null){
teacher = request.getParameter("teacher");
request.setAttribute("teacher", teacher);
}
}
String kechengname="";
if(!"".equals(request.getParameter("kechengname"))&&request.getParameter("kechengname")!=null){
kechengname = request.getParameter("kechengname");
request.setAttribute("kechengname", kechengname);
}
String banjinum="";
if(!"".equals(request.getParameter("banjinum"))&&request.getParameter("banjinum")!=null){
banjinum = request.getParameter("banjinum");
request.setAttribute("banjinum", banjinum);
sb.append("and banjinum = '"+banjinum+"'");
}
String riqi="";
if(!"".equals(request.getParameter("riqi"))&&request.getParameter("riqi")!=null){
riqi = request.getParameter("riqi");
request.setAttribute("riqi", riqi);
}
String where = sb.toString();
int currentpage = 1;
int pagesize = 50;
if (request.getParameter("pagenum") != null)
currentpage = Integer.parseInt(request.getParameter("pagenum"));
List<User> users = userDao.selectAllUserBy((currentpage - 1) * pagesize, pagesize,where);
request.setAttribute("kaoqinloglist", users);
request.setAttribute("banjilist", banjiDao.getAll(""));
request.setAttribute("subjectlist", subjectDao.getAll(""));
return "success";
}
public String kaoqinlogaddlist() throws Exception{
HttpServletRequest request = ServletActionContext.getRequest();
String[] newids = request.getParameterValues("ids");
for(int i=0;i<newids.length;i++){
int newsid = Integer.parseInt(newids[i]);
User userlog =userDao.selectUser(newsid);
KaoQinLog kaoqinlog = new KaoQinLog();
kaoqinlog.setBanjinum(userlog.getBanjinum());
kaoqinlog.setCodenum(userlog.getCodenum());
kaoqinlog.setIskuangke(1);
kaoqinlog.setKechengname(request.getParameter("kechengname"));
kaoqinlog.setTeacher(request.getParameter("teacher"));
kaoqinlog.setKuangkenum(1);
kaoqinlog.setRiqi(request.getParameter("riqi"));
kaoqinlog.setCreatetime(new Date());
kaoqinlogDao.insertKaoQinLog(kaoqinlog);
}
// HttpServletResponse resp = ServletActionContext.getResponse();
// PrintWriter out = resp.getWriter();
// //out.write(manage.util.Util.outPutMsg("200", "添加成功", "", "", "kaoqinloglist.html"));
//
// out.write(manage.util.Util.outPutMsg("200", "修改成功", "kaoqinlogList2", "", false, "kaoqinlog///kaoqinloglist2.html"));
// out.flush();
// out.close();
return "success";
}
}
如果也想学习本系统,下面领取。关注并回复:008ssh