是谁偷走了我的瞄准

今天晚上学了一会javaweb,学会了登录页面跳转,完善了增删改查,加深了理解,如下:

UserMapper接口:

点击查看代码
package job.mapper;

import job.pojo.record;
import job.pojo.staff;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface UserMapper {
    staff selectidandpassword(@Param("jobid")String jobid,@Param("password") String password);
    staff selectbyid(@Param("jobid")String jobid);
    int updatestaff(@Param("jobid")String jobid,@Param("name")String name,@Param("sex")String sex,@Param("birthday")String birthday);
    int updatestaffpassword(@Param("jobid")String jobid,@Param("password")String password,@Param("password1")String password1);
int dailyrecord(@Param("id") Integer id, @Param("attendancetime") String attendancetime, @Param("jobid") String jobid, @Param("name") String name, @Param("sex") String sex, @Param("birthday") String birthday, @Param("department") String department, @Param("attendancetype") String attendancetype);
    List<record> selectbyid1(@Param("jobid")String jobid);
}

record存储考勤信息

点击查看代码
package job.pojo;

public class record {
    private int id;
    private String attendancetime;
    private String jobid;
    private String name;
    private String sex;
    private String birthday;
    private String department;
    private String attendancetype;

    @Override
    public String toString() {
        return "record{" +
                "id=" + id +
                ", attendancetime='" + attendancetime + '\'' +
                ", jobid='" + jobid + '\'' +
                ", name='" + name + '\'' +
                ", sex='" + sex + '\'' +
                ", birthday='" + birthday + '\'' +
                ", department='" + department + '\'' +
                ", attendancetype='" + attendancetype + '\'' +
                '}';
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getAttendancetime() {
        return attendancetime;
    }

    public void setAttendancetime(String attendancetime) {
        this.attendancetime = attendancetime;
    }

    public String getJobid() {
        return jobid;
    }

    public void setJobid(String jobid) {
        this.jobid = jobid;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getBirthday() {
        return birthday;
    }

    public void setBirthday(String birthday) {
        this.birthday = birthday;
    }

    public String getDepartment() {
        return department;
    }

    public void setDepartment(String department) {
        this.department = department;
    }

    public String getAttendancetype() {
        return attendancetype;
    }

    public void setAttendancetype(String attendancetype) {
        this.attendancetype = attendancetype;
    }
}

staff存储职员的信息:

点击查看代码
package job.pojo;

public class staff {
    private String jobid;
    private String name;
    private String sex;
    private String birthday;
    private String department;
    private String role;
    private String password;

    @Override
    public String toString() {
        return "staff{" +
                "jobid='" + jobid + '\'' +
                ", name='" + name + '\'' +
                ", sex='" + sex + '\'' +
                ", birthday='" + birthday + '\'' +
                ", department='" + department + '\'' +
                ", role='" + role + '\'' +
                ", password='" + password + '\'' +
                '}';
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getJobid() {
        return jobid;
    }

    public void setJobid(String jobid) {
        this.jobid = jobid;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getBirthday() {
        return birthday;
    }

    public void setBorthday(String borthday) {
        this.birthday = borthday;
    }

    public String getDepartment() {
        return department;
    }

    public void setDepartment(String department) {
        this.department = department;
    }

    public String getRole() {
        return role;
    }

    public void setRole(String role) {
        this.role = role;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

login登录(有跳转功能)

点击查看代码
package job.web;

import job.mapper.UserMapper;
import job.pojo.staff;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;

@WebServlet("/login")
public class login extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
       this.doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String jobid=req.getParameter("jobid");
        String password=req.getParameter("password");
        String resource = "mybatis-config.xml";
        req.setCharacterEncoding("UTF-8"); //解决乱码问题
        resp.setContentType("text/html;charset=utf-8");
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession sqlSession=sqlSessionFactory.openSession();
        UserMapper usermapper=sqlSession.getMapper(UserMapper.class);
        staff s=usermapper.selectidandpassword(jobid,password);
        PrintWriter writer=resp.getWriter();
        String role=s.getRole();
        if (s != null) {
            if ("员工".equals(role)) {
                resp.sendRedirect("/job-demo/staffscreen.html");
            } else if ("部门经理".equals(role)) {
                resp.sendRedirect("/job-demo/managerscreen.html");
            } else if ("管理员".equals(role)) {
                resp.sendRedirect("/job-demo/adminscreen.html");
            }
        } else {
            resp.getWriter().write("登陆失败!");
        }
    }
}

searchselfrecord查询自己的出勤记录:

点击查看代码


package job.web;

import job.mapper.UserMapper;
import job.pojo.record;
import job.pojo.staff;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.util.List;

@WebServlet("/searchselfrecord")
public class searchselfrecord extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doGet(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String jobid = req.getParameter("jobid");
        String resource = "mybatis-config.xml";
        resp.setContentType("text/html;charset=utf-8");
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession sqlSession=sqlSessionFactory.openSession();
        UserMapper usermapper=sqlSession.getMapper(UserMapper.class);
        List<record> records=usermapper.selectbyid1(jobid);
        PrintWriter out = resp.getWriter();
        out.println("<h2>查询结果:</h2>");
        out.println("<table border='1'>");
        out.println("<tr><th>序号</th><th>考勤时间</th><th>工号</th><th>姓名</th><th>性别</th><th>出生日期</th><th>部门</th><th>考勤类型</th></tr>");

        if (records != null && !records.isEmpty()) {
            for (record r : records) {
                out.println("<tr>");
                out.println("<td>" + r.getId() + "</td>");
                out.println("<td>" + r.getAttendancetime() + "</td>");
                out.println("<td>" + r.getJobid() + "</td>");
                out.println("<td>" + r.getName() + "</td>");
                out.println("<td>" + r.getSex() + "</td>");
                out.println("<td>" + r.getBirthday() + "</td>");
                out.println("<td>" + r.getDepartment() + "</td>");
                out.println("<td>" + r.getAttendancetype() + "</td>");
                out.println("</tr>");
            }
        } else {
            out.println("<tr><td colspan='8'>没有找到记录。</td></tr>");
        }
        out.println("</table>");
        sqlSession.commit();
        sqlSession.close();
    }

}
staffedit职员修改个人信息
点击查看代码


package job.web;

import job.mapper.UserMapper;
import job.pojo.staff;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.io.Writer;

@WebServlet("/staffedit")
public class staffedit extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doGet(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setCharacterEncoding("UTF-8"); //解决乱码问题
        resp.setContentType("text/html;charset=utf-8");
        String jobid = req.getParameter("jobid");
        String name = req.getParameter("name");
        String sex =req.getParameter("sex");
        String birthday=req.getParameter("birthday");
        String resource = "mybatis-config.xml";
        Writer writer = resp.getWriter();
        PrintWriter out = resp.getWriter();
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession sqlSession=sqlSessionFactory.openSession();
        UserMapper usermapper=sqlSession.getMapper(UserMapper.class);
        int u=usermapper.updatestaff(jobid,name,sex,birthday);
        if(u>0){
            writer.write("修改成功!");
            staff s=usermapper.selectbyid(jobid);
            out.println("<table border='1'>");
            out.println("<tr><th>工号</th><th>姓名</th><th>性别</th><th>出生日期</th><th>部门</th><th>角色</th><th>密码</th></tr>");
            out.println("<tr>");
            out.println("<td>" + s.getJobid() + "</td>");
            out.println("<td>" + s.getName() + "</td>");
            out.println("<td>" + s.getSex() + "</td>");
            out.println("<td>" + s.getBirthday() + "</td>");
            out.println("<td>" + s.getDepartment() + "</td>");
            out.println("<td>" + s.getRole() + "</td>");
            out.println("<td>" + s.getPassword() + "</td>");

            out.println("</table>");
        }else writer.write("修改失败!");
    sqlSession.commit();
    sqlSession.close();
    }

}
staffeditpassword职员修改密码
点击查看代码


package job.web;

import job.mapper.UserMapper;
import job.pojo.staff;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.io.Writer;

@WebServlet("/staffeditpassword")
public class staffeditpassword extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        super.doGet(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setCharacterEncoding("UTF-8"); //解决乱码问题
        resp.setContentType("text/html;charset=utf-8");
        String jobid = req.getParameter("jobid");
        String password = req.getParameter("password");
        String password1 = req.getParameter("password1");
        String password2 = req.getParameter("password2");
        String resource = "mybatis-config.xml";
        Writer writer = resp.getWriter();
        PrintWriter out = resp.getWriter();
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession sqlSession=sqlSessionFactory.openSession();
        UserMapper usermapper=sqlSession.getMapper(UserMapper.class);
        staff s=usermapper.selectbyid(jobid);
        int u=usermapper.updatestaffpassword(jobid,password,password1);
        if(s.getPassword()!=password1&&password1!=password2){
            if(u>0){
                    writer.write("修改成功!");
            }
        }else writer.write("两次输入的密码不一致或该密码与原密码相同!");
        sqlSession.commit();
        sqlSession.close();
    }
}
staffsearch职员查询个人信息
点击查看代码


package job.web;

import job.mapper.UserMapper;
import job.pojo.staff;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;

@WebServlet("/staffsearch")
public class staffsearch extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
       this.doGet(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
       String jobid = req.getParameter("jobid");
        String resource = "mybatis-config.xml";
        resp.setContentType("text/html;charset=utf-8");
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession sqlSession=sqlSessionFactory.openSession();
        UserMapper usermapper=sqlSession.getMapper(UserMapper.class);
        staff s=usermapper.selectbyid(jobid);
        PrintWriter out = resp.getWriter();
        out.println("<h2>查询结果:</h2>");
        out.println("<table border='1'>");
        out.println("<tr><th>工号</th><th>姓名</th><th>性别</th><th>出生日期</th><th>部门</th><th>角色</th><th>密码</th></tr>");

        if(s!=null){
            out.println("<tr>");
            out.println("<td>" + s.getJobid() + "</td>");
            out.println("<td>" + s.getName() + "</td>");
            out.println("<td>" + s.getSex() + "</td>");
            out.println("<td>" + s.getBirthday() + "</td>");
            out.println("<td>" + s.getDepartment() + "</td>");
            out.println("<td>" + s.getRole() + "</td>");
            out.println("<td>" + s.getPassword() + "</td>");

            out.println("</table>");

        }
        sqlSession.close();
    }
}
UserMapper.xml
点击查看代码


<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="job.mapper.UserMapper">
    <insert id="dailyrecord">
        insert into record(id,attendancetime,jobid,name,sex,birthday,department,attendancetype)values
        (#{id},#{attendancetime},#{jobid},#{name},#{sex},#{birthday},#{department},#{attendancetype});
    </insert>
    <update id="updatestaff">
        update staff set name=#{name},sex=#{sex},birthday=#{birthday} where jobid=#{jobid};
    </update>
    <update id="updatestaffpassword">
        update staff set password=#{password1} where password=#{password} and jobid=#{jobid};
    </update>

    <select id="selectidandpassword" resultType="job.pojo.staff">
        select * from staff where jobid=#{jobid} and password=#{password};
    </select>
    <select id="selectbyid" resultType="job.pojo.staff">
        select * from staff where jobid=#{jobid};
    </select>
    <select id="selectbyid1" resultType="job.pojo.record">
        select * from record where jobid=#{jobid};
    </select>
</mapper>
logback.xml(这个直接复制粘贴就行)
点击查看代码


<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!--
        CONSOLE :表示当前的日志信息是可以输出到控制台的。
    -->
    <appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>[%level] %blue(%d{HH:mm:ss.SSS}) %cyan([%thread]) %boldGreen(%logger{15}) - %msg %n</pattern>
        </encoder>
    </appender>

    <logger name="com.itheima" level="DEBUG" additivity="false">
        <appender-ref ref="Console"/>
    </logger>


    <!--

      level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF
     , 默认debug
      <root>可以包含零个或多个<appender-ref>元素,标识这个输出位置将会被本日志级别控制。
      -->
    <root level="DEBUG">
        <appender-ref ref="Console"/>
    </root>
</configuration>
mybatis-config.xml这个是存储着关于连接数据库的root和密码等等,没有它连接不了数据库
点击查看代码


<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!--起别名-->

    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql:///test?useSSL=false&amp;useServerPrepStmts=true"/>
                <property name="username" value="root"/>
                <property name="password" value="********"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <package name="job.mapper"/>
    </mappers>
</configuration>
adminscreen.html 管理员主界面
点击查看代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>管理员菜单</title>
</head>
<body>
<form>
    <h1>管理员菜单</h1>
    <a>新添部门基本信息</a><br>
    <a>修改部门基本信息</a><br>
    <a>删除部门基本信息</a><br>
    <a>新添员工基本信息</a><br>
    <a>修改员工基本信息</a><br>
    <a>删除员工基本信息</a><br>
    <a>设置角色管理</a><br>
    <a>密码重置</a><br>
</form>
</body>
</html>

dailyrecord.html 出勤打卡界面

点击查看代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>日常考勤</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            text-align: center;
            margin: 0;
            padding: 20px;
            background-color: #f4f4f4;
        }
        .container {
            border: 2px solid #000;
            padding: 20px;
            background-color: #fff;
            display: inline-block;
        }
        h1 {
            font-size: 24px;
            margin: 0;
        }
        p {
            font-size: 18px;
            margin: 10px 0;
        }
        .button {
            display: inline-block;
            margin: 10px;
            padding: 10px 20px;
            font-size: 18px;
            text-decoration: none;
            color: #fff;
            background-color: #007BFF;
            border-radius: 5px;
            cursor: pointer;
        }
        .button:hover {
            background-color: #0056b3;
        }
    </style>
</head>
<body>
<form action="/job-demo/dailyrecord" method="post" id="attendance-form">
    <div class="container">
        <h1>日常考勤管理</h1>
        <p>请输入工号:<input type="text" id="jobid" name="jobid"></p>
        <p id="attendance-time">考勤时间:正在获取...</p>
        <input type="hidden" name="attendancetime" id="attendancetime">
        <input type="hidden" name="attendancetype" id="attendancetype">
        <button type="button" class="button" onclick="submitAttendance('上班')">上 班</button>
        <button type="button" class="button" onclick="submitAttendance('下班')">下 班</button>
    </div>
</form>

<script>
    function updateTime() {
        const now = new Date();
        const utcOffset = 8 * 60; // 北京时间是 UTC+8
        const localTime = now.getTime() + (now.getTimezoneOffset() * 60000);
        const beijingTime = new Date(localTime + (utcOffset * 60000));

        const year = beijingTime.getFullYear();
        const month = String(beijingTime.getMonth() + 1).padStart(2, '0');
        const day = String(beijingTime.getDate()).padStart(2, '0');
        let hours = String(beijingTime.getHours()).padStart(2, '0');
        const minutes = String(beijingTime.getMinutes()).padStart(2, '0');

        if (hours < 12) {
            document.getElementById('attendance-time').innerText = `考勤时间:${year}-${month}-${day} 上午 ${hours}:${minutes}`;
        } else {
            hours = String(beijingTime.getHours() - 12).padStart(2, '0');
            document.getElementById('attendance-time').innerText = `考勤时间:${year}-${month}-${day} 下午 ${hours}:${minutes}`;
        }

        // 更新考勤时间隐藏字段
        document.getElementById('attendancetime').value = `${year}-${month}-${day} ${beijingTime.getHours()}:${minutes}`;
    }

    function submitAttendance(type) {
        document.getElementById('attendancetype').value = type; // 设置上下班类型
        document.getElementById('attendance-form').submit(); // 提交表单
    }

    setInterval(updateTime, 60000);
    updateTime();
</script>
</body>
</html>

managerscreen.html 部门经理主界面

点击查看代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>部门经理菜单</title>
</head>
<body>
<form>
    <h1>部门经理菜单</h1>
    <a>查看个人信息</a><br>
    <a>修改个人信息</a><br>
    <a>修改个人密码</a><br>
    <a>查询部门考勤情况</a><br>
    <a>员工调岗</a><br>
</form>
</body>
</html>

screen.html 登录界面

点击查看代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>登录</title>
</head>
<body>
<form action="/job-demo/login" method="post">
    <h1>用户登录</h1>
    <p>账号:<input type="text" name="jobid" id="jobid"></p>
    <p>密码:<input type="text" name="password" id="password"></p>
    <input type="submit" value="登录">
</form>
</body>
</html>

searchselfrecord.html 查看个人出勤记录界面

点击查看代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>查看个人出勤记录</title>
</head>
<body>
<form action="/job-demo/searchselfrecord" method="post">
    <h1>查看个人出勤记录</h1>
    <p>请输入工号:<input type="text" id="jobid" name="jobid"></p>
    <input type="submit" value="查询">
</form>
</body>
</html>

staffedit.html 修改职员个人信息界面

点击查看代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>修改个人信息</title>
</head>
<body>
<form action="/job-demo/staffedit" method="post">
    请输入要修改的工号和信息:<br>
    <a>工号:<input type="text" name="jobid" id="jobid"></a><br>
    <a>姓名:<input type="text" name="name" id="name"></a><br>
    <a>性别:<input type="text" name="sex" id="sex"></a><br>
    <a>出生日期:<input type="text" name="birthday" id="birthday"></a><br>
    <input type="submit" value="修改"><br>
</form>
</body>
</html>

staffeditpassword.html 修改职员密码界面

点击查看代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>修改密码</title>
</head>
<body>
<form action="/job-demo/staffeditpassword" method="post">
    <h1>修改密码</h1>
    <p>请输入工号:<input type="text" id="jobid" name="jobid"></p>
    <p>请输入原密码:<input type="password" id="password" name="password"></p>
    <p>请输入新密码:<input type="password" id="password1" name="password1" ></p>
    <p>请再次输入新密码:<input type="password" id="password2" name="password2"></p>
    <input type="submit">
</form>
</body>
</html>

staffscreen.html 职员主界面

点击查看代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>员工菜单</title>
</head>
<body>
<form>
    <h1>员工菜单</h1>
  <a href="staffsearch.html">查看个人信息</a><br>
  <a href="staffedit.html">修改个人信息</a><br>
  <a href="staffeditpassword.html">修改个人密码</a><br>
  <a href="dailyrecord.html">日常考勤</a><br>
  <a href="searchselfrecord.html">浏览个人考勤记录</a><br>
</form>
</body>
</html>

staffsearch.html 职员查询个人信息界面

点击查看代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>查询个人信息</title>
</head>
<body>
<form action="/job-demo/staffsearch" method="post">
    <p>输入工号查询:<input type="text" name="jobid" id="jobid"></p>
    <input type="submit" value="查询">
</form>
</body>
</html>

总结:今天的瞄准都被代码偷走了,该睡觉了!!!吗·

posted on   睡觉时候不困  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示