基于javaweb+mysql的ssm+maven学生成绩管理系统(java+jsp+maven+ssm+mysql)

基于javaweb+mysql的ssm+maven学生成绩管理系统(java+jsp+maven+ssm+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

学生成绩的增删改查管理

技术框架

JavaBean MVC JSP SSM(Spring SpringMVC MyBatis) Maven MySQL Bootstrap JavaScript

基于javaweb+mysql的SSM+Maven学生成绩管理系统(java+jsp+maven+ssm+mysql)

<script type="text/javascript">
    //提交之前进行检查,如果return false,则不允许提交
    function check() {
        var name = document.getElementById("name").value;
        var classid = document.getElementById("classid").value;
        var teacher = document.getElementById("teacher").value;
        var score = document.getElementById("score").value;
        var subject = document.getElementById("subject").value;

        if (name == "") {
            alert("学生名不能为空!");
            return false;
        }
        if (classid == "") {
            alert("班级编号不能为空!");
            return false;
        }
        if (teacher == "") {
            alert("老师姓名不能为空!");
            return false;
        }
        if (score == "" || !/^\d+(\.0*)?$/.test(score)) {
            alert("成绩必须为数字");
            return false;
        }
        if (subject == "") {
            alert("学课不能为空!");
            return false;
        }
        return true;
    }
</script>

</body>
</html>
<?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="com.demo.mapper.StudentMapper">
   <resultMap id="resultMapStudent" type="Student" >
       <id property="id" column="id"/>
       <result property="name" column="name"/>
       <result property="classid" column="classid"/>
       <result property="teacher" column="teacher"/>
       <result property="score" column="score" />
       <result property="subject" column="subject" />
   </resultMap>


<mapper namespace="com.demo.mapper.StudentMapper">
   <resultMap id="resultMapStudent" type="Student" >
       <id property="id" column="id"/>
       <result property="name" column="name"/>
       <result property="classid" column="classid"/>
       <result property="teacher" column="teacher"/>
       <result property="score" column="score" />
       <result property="subject" column="subject" />
   </resultMap>

    <select id="selectStudentAll" parameterType="ParamsStu" resultMap="resultMapStudent">
        select * from student
        <where>
           <if test="name!=null and name!=''">
                name like concat('%',#{name},'%')
           </if>
            <if test="classid!=null and classid!=''">
                and classid like concat('%',#{classid},'%')
            </if>
            <if test="teacher!=null and teacher!=''">
               and teacher like concat('%',#{teacher},'%')
            </if>
            <if test="scoreFrom!=null and scoreFrom!=''">
                and score &gt;= #{scoreFrom}
            </if>
            <if test="scoreTo!=null and scoreTo!=''">
                and score &lt;= #{scoreTo}
            </if>
            <if test="subject!=null and subject!=''">
               and subject like concat('%',#{subject},'%')
            </if>
        </where>

    </select>
   <!--删除-->
    <delete id="deleteStudent">
        delete from student where id=#{id}
    </delete>
    <!--查询一条:为修改准备-->
    <select id="updateStudentEdit" resultMap="resultMapStudent">
        select * from student where id=#{id}
    </select>
    <!--修改-->
    <update id="upadateStudent" parameterType="Student">
        update student set
          name=#{name},classid=#{classid},teacher=#{teacher},score=#{score},subject=#{subject}
        where id=#{id}
    </update>
    <!--添加-->
    <insert id="insertStudent" parameterType="Student">
        insert into student(name,classid,teacher,score,subject)
        values (#{name},#{classid},#{teacher},#{score},#{subject})
    public void setTeacher(String teacher) {
        this.teacher = teacher;
    }

    public Integer getScoreFrom() {
        return scoreFrom;
    }

    public void setScoreFrom(Integer scoreFrom) {
        this.scoreFrom = scoreFrom;
    }

    public Integer getScoreTo() {
        return scoreTo;
    }

    public void setScoreTo(Integer scoreTo) {
        this.scoreTo = scoreTo;
    }

    public String getSubject() {
        return subject;
    }

    public void setSubject(String subject) {
        this.subject = subject;
    }

    @Override
    public String toString() {
        return "ParamsStu{" +
                "pageNum=" + pageNum +
                ", pageSize=" + pageSize +
                ", name='" + name + '\'' +
                ", classid='" + classid + '\'' +
                ", teacher='" + teacher + '\'' +
                ", scoreFrom=" + scoreFrom +
                ", scoreTo=" + scoreTo +
                ", subject='" + subject + '\'' +
                '}';
    }
}
package com.demo.entity;

public class Student {
    private Integer id;
    private String name;
    private String classid;
    private String teacher;
    private Integer score;
        //执行添加,调用service添加方法-dao-持久化
        studentService.insertStudent(student);
        //添加完毕,重定向更新结果页面
        return "redirect:/selectStudentAll";
    }

}
package com.demo.util;

//分页工具类
public class ParamsStu {
    private int pageNum;   //当前页
    private int pageSize = 5;//每页条数

    //  条件查询
    private String name;
    private String classid;
    private String teacher;
    private Integer scoreFrom;
    private Integer scoreTo;
    private String subject;

    public int getPageNum() {
        return pageNum;
    }

    public void setPageNum(int pageNum) {
        this.pageNum = pageNum;
    }

    public int getPageSize() {
        return pageSize;
    }

    public void setPageSize(int pageSize) {
        this.pageSize = pageSize;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
                ", teacher='" + teacher + '\'' +
                ", scoreFrom=" + scoreFrom +
                ", scoreTo=" + scoreTo +
                ", subject='" + subject + '\'' +
                '}';
    }
}
package com.demo.entity;

public class Student {
    private Integer id;
    private String name;
    private String classid;
    private String teacher;
    private Integer score;
    private String subject;

    public Student() {
    }

    public Student(Integer id, String name, String classid, String teacher, Integer score) {
        this.id = id;
        this.name = name;
        this.classid = classid;
        this.teacher = teacher;
        this.score = score;
    }

    public Student(String name, String classid, String teacher, Integer score) {
        this.name = name;
        this.classid = classid;
        this.teacher = teacher;
        this.score = score;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.classid = classid;
        this.teacher = teacher;
        this.score = score;
    }

    public Student(String name, String classid, String teacher, Integer score) {
        this.name = name;
        this.classid = classid;
        this.teacher = teacher;
        this.score = score;
    }

    public Integer getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

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

    public String getClassid() {
        return classid;
    }

    public void setClassid(String classid) {
        this.classid = classid;
    }

    public String getTeacher() {
        return teacher;
    }

    public void setTeacher(String teacher) {
           </if>
            <if test="classid!=null and classid!=''">
                and classid like concat('%',#{classid},'%')
            </if>
            <if test="teacher!=null and teacher!=''">
               and teacher like concat('%',#{teacher},'%')
            </if>
            <if test="scoreFrom!=null and scoreFrom!=''">
                and score &gt;= #{scoreFrom}
            </if>
            <if test="scoreTo!=null and scoreTo!=''">
                and score &lt;= #{scoreTo}
            </if>
            <if test="subject!=null and subject!=''">
               and subject like concat('%',#{subject},'%')
            </if>
        </where>

    </select>
   <!--删除-->
    <delete id="deleteStudent">
        delete from student where id=#{id}
    </delete>
    <!--查询一条:为修改准备-->
    <select id="updateStudentEdit" resultMap="resultMapStudent">
        select * from student where id=#{id}
    </select>
    <!--修改-->
    <update id="upadateStudent" parameterType="Student">
        update student set
          name=#{name},classid=#{classid},teacher=#{teacher},score=#{score},subject=#{subject}
        where id=#{id}
    </update>
    <!--添加-->
    <insert id="insertStudent" parameterType="Student">
        insert into student(name,classid,teacher,score,subject)
        values (#{name},#{classid},#{teacher},#{score},#{subject})
    </insert>

</mapper>
<?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">
           </if>
            <if test="classid!=null and classid!=''">
                and classid like concat('%',#{classid},'%')
            </if>
            <if test="teacher!=null and teacher!=''">
               and teacher like concat('%',#{teacher},'%')
            </if>
            <if test="scoreFrom!=null and scoreFrom!=''">
                and score &gt;= #{scoreFrom}
            </if>
            <if test="scoreTo!=null and scoreTo!=''">
                and score &lt;= #{scoreTo}
            </if>
            <if test="subject!=null and subject!=''">
               and subject like concat('%',#{subject},'%')
            </if>
        </where>

    </select>
   <!--删除-->
    <delete id="deleteStudent">
        delete from student where id=#{id}
    </delete>
    <!--查询一条:为修改准备-->
    <select id="updateStudentEdit" resultMap="resultMapStudent">
        select * from student where id=#{id}
    </select>
    <!--修改-->
    <update id="upadateStudent" parameterType="Student">
        update student set
          name=#{name},classid=#{classid},teacher=#{teacher},score=#{score},subject=#{subject}
        where id=#{id}
    </update>
    <!--添加-->
    <insert id="insertStudent" parameterType="Student">
        insert into student(name,classid,teacher,score,subject)
        values (#{name},#{classid},#{teacher},#{score},#{subject})
    </insert>

</mapper>
<?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="com.demo.mapper.UserMapper">

    <resultMap id="BaseResultMap" type="com.demo.entity.User">
        <result column="id" property="id"/>
        <result column="username" property="username"/>
        <result column="password" property="password"/>
    }

    public Integer getScoreFrom() {
        return scoreFrom;
    }

    public void setScoreFrom(Integer scoreFrom) {
        this.scoreFrom = scoreFrom;
    }

    public Integer getScoreTo() {
        return scoreTo;
    }

    public void setScoreTo(Integer scoreTo) {
        this.scoreTo = scoreTo;
    }

    public String getSubject() {
        return subject;
    }

    public void setSubject(String subject) {
        this.subject = subject;
    }

    @Override
    public String toString() {
        return "ParamsStu{" +
                "pageNum=" + pageNum +
                ", pageSize=" + pageSize +
                ", name='" + name + '\'' +
                ", classid='" + classid + '\'' +
                ", teacher='" + teacher + '\'' +
                ", scoreFrom=" + scoreFrom +
                ", scoreTo=" + scoreTo +
                ", subject='" + subject + '\'' +
                '}';
    }
}
package com.demo.entity;

public class Student {
    private Integer id;
    private String name;
    private String classid;
        values (#{name},#{classid},#{teacher},#{score},#{subject})
    </insert>

</mapper>
<?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="com.demo.mapper.UserMapper">

    <resultMap id="BaseResultMap" type="com.demo.entity.User">
        <result column="id" property="id"/>
        <result column="username" property="username"/>
        <result column="password" property="password"/>
    </resultMap>

    <sql id="Base_Column_List">
            `id`,`username`,`password`
    </sql>

    <!--列表-->
    <select id="findAllSplit" parameterType="java.util.Map" resultMap="BaseResultMap">
        SELECT
        <include refid="Base_Column_List"/>
        FROM `admin`
        <where>
            <if test="username != null">
                `username` = #{username} AND
            </if>

            <if test="password != null">
                `password` = #{password} AND
            </if>
            1=1
        </where>
    </select>

</mapper>
<?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>
    <!--别名:分页信息-->
    <typeAliases>
        <typeAlias type="com.demo.util.ParamsStu" alias="ParamsStu"/>
    </typeAliases>
    <!--配置分页:合理化,数据库类型Oracle,Mysql-->
   <plugins>
       <plugin interceptor="com.github.pagehelper.PageInterceptor">
        //实现查询一条
        Student student = studentService.updateStudentEdit(id);
        //查询的数据放到域中
        model.addAttribute("student", student);
        return "edit";
    }

    //2,编辑页面完成后,提交 执行修改
    @RequestMapping("/updateStudent")
    public String upadateStudent(Student student) {
        //实现修改
        studentService.upadateStudent(student);
        //修改完毕,重定向,更新结果页面
        return "redirect:/selectStudentAll";
    }

    //添加:1、进入添加页面,编辑
    @RequestMapping("/insertStudentEdit")
    public String insertStudentEdit() {
        //添加完毕,重定向更新结果页面
        return "add";
    }

    //2、提交添加请求,实现
    @RequestMapping("/insertStudent")
    public String insertStudent(Student student) {
        //执行添加,调用service添加方法-dao-持久化
        studentService.insertStudent(student);
        //添加完毕,重定向更新结果页面
        return "redirect:/selectStudentAll";
    }

}
package com.demo.util;

//分页工具类
public class ParamsStu {
    private int pageNum;   //当前页
    private int pageSize = 5;//每页条数

    //  条件查询
    private String name;
    private String classid;
    private String teacher;
    private Integer scoreFrom;
    private Integer scoreTo;
    private String subject;

    public int getPageNum() {
        return pageNum;
    }

    public void setPageNum(int pageNum) {
    @Override
    public List<Student> selectStudentAll(ParamsStu params) {

        if (params.getPageNum() == 0) {
            params.setPageNum(1);
        }

        PageHelper.startPage(params.getPageNum(), params.getPageSize());
        //pageNum当前页,pageSize 每页条数
        return studentMapper.selectStudentAll(params);
    }

    @Override
    public void deleteStudent(int id) {
        studentMapper.deleteStudent(id);
    }

    @Override
    public Student updateStudentEdit(int id) {
        return studentMapper.updateStudentEdit(id);
    }

    @Override
    public void upadateStudent(Student student) {
        studentMapper.upadateStudent(student);
    }

    @Override
    public void insertStudent(Student student) {
        studentMapper.insertStudent(student);
    }

}
package com.demo.service;

@Service
public class UserServiceImpl implements UserService {
    @Autowired
    private UserMapper userMapper;

    @Override
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}
package com.demo.mapper;

public interface StudentMapper {
    //查询所有
    public List<Student> selectStudentAll(ParamsStu params);

    //根据id删除学生
    void deleteStudent(int id);

    //根据id查询学生,然后进入编辑页面 展示信息准备修改
    Student updateStudentEdit(int id);

    //修改编辑页面,提交执行修改
    void upadateStudent(Student student);

    //添加学生
    void insertStudent(Student student);

}
package com.demo.service;

                <a href="${pageContext.request.contextPath}/updateStudentEdit/${stu.id}"><input type="submit" class="btn btn-info" value="修改"></a></td>
        </tr>
    </c:forEach>
</table>
<%--分页--%>
<table align="center">
    <tr>
        <td><a href="javascript:toPage(1);"><button type="button" class="btn btn-default btn-sm">首页</button></a></td>
        <td><a href="javascript:toPage(${pageInfo.pageNum-1});"><button type="button" class="btn btn-default btn-sm">上一页</button></a></td>
        <td><a href="javascript:toPage(${pageInfo.pageNum+1});"><button type="button" class="btn btn-default btn-sm">下一页</button></a></td>
        <td><a href="javascript:toPage(${pageInfo.pages});"><button type="button" class="btn btn-default btn-sm">尾页</button></a></td>
        <td>设置每页条数
            <select id="pageSize" onchange="toPage(1)">
                <option <c:if test="${pageInfo.pageSize==2}">selected</c:if>>2</option>
                <option <c:if test="${pageInfo.pageSize==5}">selected</c:if>>5</option>
                <option <c:if test="${pageInfo.pageSize==8}">selected</c:if>>8</option>
                <option <c:if test="${pageInfo.pageSize==10}">selected</c:if>>10</option>
                <option <c:if test="${pageInfo.pageSize==12}">selected</c:if>>12</option>
                <option <c:if test="${pageInfo.pageSize==15}">selected</c:if>>15</option>
            </select>
        </td>
        <td>第${pageInfo.pageNum}页/共${pageInfo.pages}页</td>
        <td><a href="${pageContext.request.contextPath}/insertStudentEdit"><button type="button" class="btn btn-success btn-sm">添加</button></a></td>
    </tr>
</table>
</body>
<script type="text/javascript">
    function toPage(pageNum) {
        //pageNum为当前页
        $("#pn").val(pageNum);
        //获取页面设置的每页条数
        var pageSize = $("#pageSize").val();
        //每页条数传给表单,更新每页条数
        $("#ps").val(pageSize);
        //提交表单请求
        $("#myForm").submit();
    }
</script>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
            </div>
        </div>
        <br>
        <br>
        <br>
        <button type="submit" class="login-button">登陆</button>
    </div>
</form>
</body>
<script type="text/javascript">
    //提交之前进行检查,如果return false,则不允许提交
    function check() {
        //根据ID获取值
        var username = document.getElementById("username").value;
        var password = document.getElementById("password").value;
        if (username == "") {
            alert("用户名不能为空");
            return false;
        }
        if (password == "") {
            alert("密码不能为空");
            return false;
        }
        return true;
    }
</script>
</html>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>修改的编辑页面</title>
    <script type="text/javascript"
            src="https://cdn.staticfile.org/twitter-bootstrap/3.3.4/js/bootstrap.min.js"></script>
    <link rel="stylesheet" type="text/css"
          href="https://cdn.staticfile.org/twitter-bootstrap/3.3.4/css/bootstrap.min.css">
</head>
<body>

<div class="col-xs-3 col-md-offset-4">
    <br/><br/><br/>

public interface StudentMapper {
    //查询所有
    public List<Student> selectStudentAll(ParamsStu params);

    //根据id删除学生
    void deleteStudent(int id);

    //根据id查询学生,然后进入编辑页面 展示信息准备修改
    Student updateStudentEdit(int id);

    //修改编辑页面,提交执行修改
    void upadateStudent(Student student);

    //添加学生
    void insertStudent(Student student);

}
package com.demo.service;

public interface StudentService {
 //查询所有
 public List<Student> selectStudentAll(ParamsStu params);

 void deleteStudent(int id);

 Student updateStudentEdit(int id);

 void upadateStudent(Student student);

 void insertStudent(Student student);

}
package com.demo.mapper;

public interface UserMapper {

            <td>${stu.name}</td>
            <td>${stu.classid}</td>
            <td>${stu.subject}</td>
            <td>${stu.teacher}</td>
            <td>${stu.score}</td>
            <td><c:if test="${stu.score>=90}"></c:if><c:if test="${stu.score<90 and stu.score>=80 }"></c:if><c:if test="${stu.score<80 and stu.score>=60}">合格</c:if><c:if test="${stu.score<60}">不合格</c:if></td>
            <td><a href="${pageContext.request.contextPath}/deleteStudent/${stu.id}"><input type="submit" class="btn btn-danger" value="删除"></a>
                <a href="${pageContext.request.contextPath}/updateStudentEdit/${stu.id}"><input type="submit" class="btn btn-info" value="修改"></a></td>
        </tr>
    </c:forEach>
</table>
<%--分页--%>
<table align="center">
    <tr>
        <td><a href="javascript:toPage(1);"><button type="button" class="btn btn-default btn-sm">首页</button></a></td>
        <td><a href="javascript:toPage(${pageInfo.pageNum-1});"><button type="button" class="btn btn-default btn-sm">上一页</button></a></td>
        <td><a href="javascript:toPage(${pageInfo.pageNum+1});"><button type="button" class="btn btn-default btn-sm">下一页</button></a></td>
        <td><a href="javascript:toPage(${pageInfo.pages});"><button type="button" class="btn btn-default btn-sm">尾页</button></a></td>
        <td>设置每页条数
            <select id="pageSize" onchange="toPage(1)">
                <option <c:if test="${pageInfo.pageSize==2}">selected</c:if>>2</option>
                <option <c:if test="${pageInfo.pageSize==5}">selected</c:if>>5</option>
                <option <c:if test="${pageInfo.pageSize==8}">selected</c:if>>8</option>
                <option <c:if test="${pageInfo.pageSize==10}">selected</c:if>>10</option>
                <option <c:if test="${pageInfo.pageSize==12}">selected</c:if>>12</option>
                <option <c:if test="${pageInfo.pageSize==15}">selected</c:if>>15</option>
            </select>
        </td>
        <td>第${pageInfo.pageNum}页/共${pageInfo.pages}页</td>
        <td><a href="${pageContext.request.contextPath}/insertStudentEdit"><button type="button" class="btn btn-success btn-sm">添加</button></a></td>
    </tr>
</table>
</body>
<script type="text/javascript">
    function toPage(pageNum) {
        //pageNum为当前页
        $("#pn").val(pageNum);
        //获取页面设置的每页条数
        var pageSize = $("#pageSize").val();
        //每页条数传给表单,更新每页条数
            params.setPageNum(1);
        }

        PageHelper.startPage(params.getPageNum(), params.getPageSize());
        //pageNum当前页,pageSize 每页条数
        return studentMapper.selectStudentAll(params);
    }

    @Override
    public void deleteStudent(int id) {
        studentMapper.deleteStudent(id);
    }

    @Override
    public Student updateStudentEdit(int id) {
        return studentMapper.updateStudentEdit(id);
    }

    @Override
    public void upadateStudent(Student student) {
        studentMapper.upadateStudent(student);
    }

    @Override
    public void insertStudent(Student student) {
        studentMapper.insertStudent(student);
    }

}
package com.demo.service;

@Service
public class UserServiceImpl implements UserService {
    @Autowired
    private UserMapper userMapper;

    @Override
    public User get(String username, String password) {
        Map<String, Object> params = new HashMap<>();
        params.put("username", username);
//        boolean flag = "admin".equals(request.getParameter("username")) && "123456".equals(request.getParameter("password"));//模拟数据库登录
        User user = userService.get(request.getParameter("username"), request.getParameter("password"));

        if (user != null) {
            session.setAttribute("msg", "Login Success!!!");
            session.setAttribute("url", "/selectStudentAll");
        } else {
            session.setAttribute("msg", "username or password was wrong!");
            session.setAttribute("url", "/login.jsp");
        }
        request.getRequestDispatcher("/forward.jsp").forward(request, response);
    }
}
package com.demo.service;

@Service
public class StuServiceImpl implements StudentService {
    @Autowired
    private StudentMapper studentMapper;

    //查询所有
    @Override
    public List<Student> selectStudentAll(ParamsStu params) {

        if (params.getPageNum() == 0) {
            params.setPageNum(1);
        }

        PageHelper.startPage(params.getPageNum(), params.getPageSize());
        //pageNum当前页,pageSize 每页条数
        return studentMapper.selectStudentAll(params);
    }

    @Override
    public void deleteStudent(int id) {
        studentMapper.deleteStudent(id);
                <option <c:if test="${pageInfo.pageSize==5}">selected</c:if>>5</option>
                <option <c:if test="${pageInfo.pageSize==8}">selected</c:if>>8</option>
                <option <c:if test="${pageInfo.pageSize==10}">selected</c:if>>10</option>
                <option <c:if test="${pageInfo.pageSize==12}">selected</c:if>>12</option>
                <option <c:if test="${pageInfo.pageSize==15}">selected</c:if>>15</option>
            </select>
        </td>
        <td>第${pageInfo.pageNum}页/共${pageInfo.pages}页</td>
        <td><a href="${pageContext.request.contextPath}/insertStudentEdit"><button type="button" class="btn btn-success btn-sm">添加</button></a></td>
    </tr>
</table>
</body>
<script type="text/javascript">
    function toPage(pageNum) {
        //pageNum为当前页
        $("#pn").val(pageNum);
        //获取页面设置的每页条数
        var pageSize = $("#pageSize").val();
        //每页条数传给表单,更新每页条数
        $("#ps").val(pageSize);
        //提交表单请求
        $("#myForm").submit();
    }
</script>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" %>
<%@ taglib prefix="c"
           uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>登录页</title>
    <style type="text/css">
        body {
            background-color: #ebebeb;
        }

        .login {
            z-index: 2;
            position: absolute;
            width: 350px;
            border-radius: 0px;
            height: 500px;
            background: white;
            box-shadow: 0px 0px 0px #333333;
            top: 50%;
            left: 50%;
            margin-top: -250px;
            margin-left: -175px;
            transition: all 1s;
            -moz-transition: all 1s; /* Firefox 4 */
    //查询所有
    @Override
    public List<Student> selectStudentAll(ParamsStu params) {

        if (params.getPageNum() == 0) {
            params.setPageNum(1);
        }

        PageHelper.startPage(params.getPageNum(), params.getPageSize());
        //pageNum当前页,pageSize 每页条数
        return studentMapper.selectStudentAll(params);
    }

    @Override
    public void deleteStudent(int id) {
        studentMapper.deleteStudent(id);
    }

    @Override
    public Student updateStudentEdit(int id) {
        return studentMapper.updateStudentEdit(id);
    }

    @Override
    public void upadateStudent(Student student) {
        studentMapper.upadateStudent(student);
    }

    @Override
    public void insertStudent(Student student) {
        studentMapper.insertStudent(student);
    }

}
package com.demo.service;

        return score;
    }

    public void setScore(Integer score) {
        this.score = score;
    }

    public String getSubject() {
        return subject;
    }

    public void setSubject(String subject) {
        this.subject = subject;
    }

    @Override
    public String toString() {
        return "Student{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", classid='" + classid + '\'' +
                ", teacher='" + teacher + '\'' +
                ", score=" + score +
                ", subject='" + subject + '\'' +
                '}';
    }
}
package com.demo.controller;

@Controller
public class LoginController {

    @Autowired
    private UserService userService;

    @RequestMapping("login")
    public void login(HttpServletRequest request, HttpServletResponse response) throws Exception {
<html>
<head>
    <title>学生成绩管理系统</title>

    <script type="text/javascript"
            src="https://cdn.staticfile.org/twitter-bootstrap/3.3.4/js/bootstrap.min.js"></script>
    <link rel="stylesheet" type="text/css"
          href="https://cdn.staticfile.org/twitter-bootstrap/3.3.4/css/bootstrap.min.css">

</head>
<style type="text/css">
    td {
        text-align: center;
    }
</style>
<body>
<h1 align="center">学生成绩管理系统</h1>
<%--条件查询/搜索:注意写工具类--%>
<div align="center">
    <form id="myForm" action="${pageContext.request.contextPath}/selectStudentAll" method="post">
        姓名:<input type="text" name="name" value="${par.name}" size="6"/>
        班级编号:<input type="text" name="classid" value="${par.classid}" size="6"/>
        学科:<input type="text" name="subject" value="${par.subject}" size="6"/>
        老师姓名:<input type="text" name="teacher" value="${par.teacher}" size="6"/> <br/> <br/>
        学生成绩:<input type="text" name="scoreFrom" value="${par.scoreFrom}" size="6"/>
        ---<input type="text" name="scoreTo" value="${par.scoreTo}" size="6"/>
        <%--条件搜索后:分页--%>
        <input id="pn" type="hidden" name="pageNum" value="${pageInfo.pageNum}">
        <%--页面动态设置每页条数--%>
        <input id="ps" type="hidden" name="pageSize" value="${pageInfo.pageSize}">
        <input type="submit" class="btn btn-primary" value="搜索">
    </form>
</div>
<%--数据展示--%>
<table border="1" align="center" class="table table-striped table-hover table-bordered">
    <tr>
        <td>学生编号</td>
        <td>学生姓名</td>
        <td>班级编号</td>
        <td>学科</td>
        <td>老师姓名</td>
        <td>学生成绩</td>
        <td>等及</td>
        <td>操作</td>
    @RequestMapping("/insertStudent")
    public String insertStudent(Student student) {
        //执行添加,调用service添加方法-dao-持久化
        studentService.insertStudent(student);
        //添加完毕,重定向更新结果页面
        return "redirect:/selectStudentAll";
    }

}
package com.demo.util;

//分页工具类
public class ParamsStu {
    private int pageNum;   //当前页
    private int pageSize = 5;//每页条数

    //  条件查询
    private String name;
    private String classid;
    private String teacher;
    private Integer scoreFrom;
    private Integer scoreTo;
    private String subject;

    public int getPageNum() {
        return pageNum;
    }

    public void setPageNum(int pageNum) {
        this.pageNum = pageNum;
    }

    public int getPageSize() {
        return pageSize;
    }

    public void setPageSize(int pageSize) {
        this.pageSize = pageSize;
    }

    public String getName() {
        return name;
    }

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

    public String getClassid() {
        <td><a href="javascript:toPage(${pageInfo.pageNum-1});"><button type="button" class="btn btn-default btn-sm">上一页</button></a></td>
        <td><a href="javascript:toPage(${pageInfo.pageNum+1});"><button type="button" class="btn btn-default btn-sm">下一页</button></a></td>
        <td><a href="javascript:toPage(${pageInfo.pages});"><button type="button" class="btn btn-default btn-sm">尾页</button></a></td>
        <td>设置每页条数
            <select id="pageSize" onchange="toPage(1)">
                <option <c:if test="${pageInfo.pageSize==2}">selected</c:if>>2</option>
                <option <c:if test="${pageInfo.pageSize==5}">selected</c:if>>5</option>
                <option <c:if test="${pageInfo.pageSize==8}">selected</c:if>>8</option>
                <option <c:if test="${pageInfo.pageSize==10}">selected</c:if>>10</option>
                <option <c:if test="${pageInfo.pageSize==12}">selected</c:if>>12</option>
                <option <c:if test="${pageInfo.pageSize==15}">selected</c:if>>15</option>
            </select>
        </td>
        <td>第${pageInfo.pageNum}页/共${pageInfo.pages}页</td>
        <td><a href="${pageContext.request.contextPath}/insertStudentEdit"><button type="button" class="btn btn-success btn-sm">添加</button></a></td>
    </tr>
</table>
</body>
<script type="text/javascript">
    function toPage(pageNum) {
        //pageNum为当前页
        $("#pn").val(pageNum);
        //获取页面设置的每页条数
        var pageSize = $("#pageSize").val();
        //每页条数传给表单,更新每页条数
        $("#ps").val(pageSize);
        //提交表单请求
        $("#myForm").submit();
    }
</script>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" %>
<%@ taglib prefix="c"
           uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>登录页</title>
    <style type="text/css">
        body {
            background-color: #ebebeb;
                "id=" + id +
                ", name='" + name + '\'' +
                ", classid='" + classid + '\'' +
                ", teacher='" + teacher + '\'' +
                ", score=" + score +
                ", subject='" + subject + '\'' +
                '}';
    }
}
package com.demo.controller;

@Controller
public class LoginController {

    @Autowired
    private UserService userService;

    @RequestMapping("login")
    public void login(HttpServletRequest request, HttpServletResponse response) throws Exception {
        request.setCharacterEncoding("utf-8");
        response.setCharacterEncoding("utf-8");
        HttpSession session = request.getSession();
//        boolean flag = "admin".equals(request.getParameter("username")) && "123456".equals(request.getParameter("password"));//模拟数据库登录
        User user = userService.get(request.getParameter("username"), request.getParameter("password"));

        if (user != null) {
            session.setAttribute("msg", "Login Success!!!");
            session.setAttribute("url", "/selectStudentAll");
        } else {
            session.setAttribute("msg", "username or password was wrong!");
            session.setAttribute("url", "/login.jsp");
        }
        request.getRequestDispatcher("/forward.jsp").forward(request, response);
    }
}
package com.demo.service;

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值