首页 > 其他分享 >考勤打卡系统

考勤打卡系统

时间:2024-12-25 15:33:12浏览次数:7  
标签:resp req 系统 考勤 role statement import 打卡 servlet

登录界面 分为职员,管理员、部门经理
`<%--
Created by IntelliJ IDEA.
User: 32262
Date: 2024/12/16
Time: 14:08
To change this template use File | Settings | File Templates.
--%>

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>

JSP - Hello World
账户:
密码:
<input type="submit" value="登录" class="myButton">

<span id="tip">${tip}</span>

package org.example.kaoqin;

import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

@WebServlet("/userLogin")
public class Userloginservlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
throws javax.servlet.ServletException, IOException {
String name = req.getParameter("name");
String password = req.getParameter("password");

    // 获取 HttpSession 对象
    HttpSession session = req.getSession();

    try (Connection connection = Database.getConnection();
         PreparedStatement statement = connection.prepareStatement("SELECT role FROM zhiyuan WHERE name = ? AND password = ?")) {
        statement.setString(1, name);
        statement.setString(2, password);

        ResultSet resultSet = statement.executeQuery();

        if (resultSet.next()) {
            // 获取用户身份
            String role = resultSet.getString("role");

            // 将用户名和身份存储在 session 中
            session.setAttribute("name", name);
            session.setAttribute("role", role);

            // 根据身份转发到相应的页面
            if ("zhiyuan".equals(role)) {
                req.getRequestDispatcher("zhiyuan.jsp").forward(req, resp);
            } else if ("bumenjingli".equals(role)) {
                req.getRequestDispatcher("bumenjingli.jsp").forward(req, resp);
            } else if ("guanliyuan".equals(role)) {
                req.getRequestDispatcher("guanliyuan.jsp").forward(req, resp);
            } else {
                req.setAttribute("tip", "未知用户类型");
                req.getRequestDispatcher("index.jsp").forward(req, resp);
            }
        } else {
            req.setAttribute("tip", "用户名或密码错误");
            req.getRequestDispatcher("index.jsp").forward(req, resp);
        }
    } catch (SQLException | ClassNotFoundException e) {
        // 记录日志
        e.printStackTrace();
        throw new RuntimeException("数据库操作失败", e);
    }
}

}
密码重置<%@ page import="java.sql.ResultSet" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.Statement" %>
<%@ page import="org.example.kaoqin.Database" %>
<%--
Created by IntelliJ IDEA.
User: 32262
Date: 2024/12/9
Time: 19:45
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

Title
    <%
        String jobid = request.getParameter("jobid");
        try (
                Connection con = Database.getConnection();
                Statement st = con.createStatement();
                ResultSet rs = jobid != null ? st.executeQuery("select * from zhiyuan where jobid = '" + jobid + "'") : st.executeQuery("select * from zhiyuan")) {
            while (rs.next()) {
    %>
    <tr>
        <td><%= rs.getString("jobid") %></td>
        <td><%= rs.getString("name") %></td>
        <td><%= rs.getString("sex") %></td>
        <td><%= rs.getString("birthday") %></td>
        <td><%= rs.getString("department") %></td>
        <td><a href="resetpassword.jsp?jobid=<%= rs.getString("jobid") %>">重置密码</a></td>
    </tr>
    <%
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    %>

</table>

<a href="guanliyuan.jsp">返回首页</a>
` `<%-- Created by IntelliJ IDEA. User: 32262 Date: 2024/12/9 Time: 19:56 To change this template use File | Settings | File Templates. --%> <%@ page import="java.sql.Connection" %> <%@ page import="java.sql.PreparedStatement" %> <%@ page import="org.example.kaoqin.Database" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <% String jobid = request.getParameter("jobid"); String newPassword = "123456"; // 设置默认密码或从请求中获取新密码
try (Connection connection = Database.getConnection();
     PreparedStatement statement = connection.prepareStatement("UPDATE zhiyuan SET password = ? WHERE jobid = ?")) {
    statement.setString(1, newPassword);
    statement.setString(2, jobid);

    int rowsAffected = statement.executeUpdate();
    if (rowsAffected > 0) {
        System.out.println("<h2>密码重置成功!</h2>");
    } else {
        System.out.println("<h2>密码重置失败!</h2>");
    }
} catch (Exception e) {
    e.printStackTrace();
    System.out.println("<h2>发生错误!</h2>");
}

%>
返回查询页面

`

修改密码
`<%--
Created by IntelliJ IDEA.
User: 32262
Date: 2024/12/9
Time: 18:00
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

Title
工号 姓名 性别 生日 部门 职务

标签:resp,req,系统,考勤,role,statement,import,打卡,servlet
From: https://www.cnblogs.com/ytrkkaa/p/18630513

相关文章

  • springboot毕设 智能公交系统app 程序+论文
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着城市化进程的加速,公共交通在城市居民出行中扮演着至关重要的角色。然而,传统的公交系统往往面临着信息不对称、调度效率低下以及乘客体验不佳等问......
  • springboot毕设 在线考试系统 程序+论文
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着互联网技术的飞速发展和教育信息化的不断推进,传统的考试模式逐渐暴露出诸多不便,如考试组织成本高、效率低下、资源分配不均等问题。特别是在当前......
  • Springboot旧商品销售系统4104m(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,卖家,商品分类,商品信息开题报告内容一、项目背景与意义随着经济的快速发展和人们消费观念的转变,旧商品市场逐渐兴起。许多消费者开始注重资源的循环利用,......
  • Springboot旧教材交易系统a6151(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,书籍类型,书籍信息开题报告内容一、研究背景随着高等教育的普及和校园生活的丰富多彩,学生们在学习和生活中积累了大量的旧教材。这些旧教材对于个人而言,可......
  • 什么是设备管理系统?主要涵盖了哪些内容?
    在企业生产中,设备的稳定运行与高效管理是企业成功的关键因素之一。无论是制造业的大型机械,还是服务业的电子设备,任何故障或停机都可能导致生产中断、服务延迟,进而造成巨大的经济损失。而设备管理系统可以提前预警设备故障,合理安排维修计划,确保设备正常运行。一、设备管理系统......
  • ISUP协议视频平台EasyCVR安防知识:如何评估监控系统升级的必要性?
    在当今这个信息爆炸、技术日新月异的时代,监控系统作为保障安全的重要工具,其升级和优化显得尤为重要。随着技术的不断进步和业务需求的不断变化,对监控系统进行升级不仅是提高安全性的需要,也是适应新挑战的必要措施。以下是对监控系统升级必要性的全面评估,我们将从技术评估与规划、......
  • 员工考勤系统
    员工考勤管理系统(50分)1、项目需求:企业员工考勤管理系统是一个企业单位信息化建设不可缺少的部分。考勤管理系统是针对某公司对该公司职工的考勤、查询、信息录入、核查、统计分析等功能为一体的应用软件,为用户提供充足的信息和快捷的查询手段。2.系统要求与功能设计2.1页面要......
  • 私有化部署视频平台EasyCVR打造安防监控系统时,如何确保监控数据的安全?
    在数字化时代,监控数据的安全和隐私保护已成为全球关注的焦点。随着技术的进步,监控系统不仅需要提供清晰的视频监控,还需要确保数据的安全性。以下是一些关键措施,它们可以帮助我们在保护监控数据的同时,遵守法律法规,维护个人隐私和企业安全。1、物理访问控制通过数据库锁定、视频......
  • Linux基础——固化系统路由
    一、临时添加路由(重启network服务失效)例:方法一:routeadd-net或者-hostgw网关deveth0说明:-net要添加标准子网掩码。-host要添加主机ip可以不写子网掩码。方法二:iprouteaddip或者网段viadeveth0查看路由表:参考文档:https://blog.csdn.net/yuyuyuliang00/article/detail......
  • 【开源免费】基于SpringBoot+Vue.JS学生评奖评优管理系统(JAVA毕业设计)
    本文项目编号T096,文末自助获取源码\color{red}{T096,文末自助获取源码}......