servlet+jsp实现简单的学生管理系统

功能图

  1. 主界面:

在这里插入图片描述

  1. 添加:

在这里插入图片描述

  • 修改:
    在这里插入图片描述4:按性别查询 并分页显示:
    在这里插入图片描述

     							entity
    
  • Page

package com.ge.entity;

import java.util.List;

public class Page<T> {
    private int currentPage;    //当前页数
    private int totalPage;      //总页数
    private int pageSize;       //每页的记录数
    private int totalSize;       //总的记录数
    private List<T> list;

    public Page() {
    }

    public Page(int currentPage, int totalPage, int pageSize, int totalSize, List<T> list) {
        this.currentPage = currentPage;
        this.totalPage = totalPage;
        this.pageSize = pageSize;
        this.totalSize = totalSize;
        this.list = list;
    }

    public int getCurrentPage() {
        return currentPage;
    }

    public void setCurrentPage(int currentPage) {
        this.currentPage = currentPage;
    }

    public int getTotalPage() {
        return totalPage;
    }

    public void setTotalPage(int totalPage) {
        this.totalPage = totalPage;
    }

    public int getPageSize() {
        return pageSize;
    }

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

    public int getTotalSize() {
        return totalSize;
    }

    public void setTotalSize(int totalSize) {
        this.totalSize = totalSize;
    }

    public List<T> getList() {
        return list;
    }

    public void setList(List<T> list) {
        this.list = list;
    }

    @Override
    public String toString() {
        return "Page{" +
                "currentPage=" + currentPage +
                ", totalPage=" + totalPage +
                ", pageSize=" + pageSize +
                ", totalSize=" + totalSize +
                ", list=" + list +
                '}';
    }
}




  • Student
package com.ge.entity;


public class Student {
    private int id;
    private String name;
    private int age;
    private String gender;
    private String address;

    public Student() {
    }

    public Student(int id, String name, int age, String gender, String address) {
        this.id = id;
        this.name = name;
        this.age = age;
        this.gender = gender;
        this.address = address;
    }
    public int getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

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

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    @Override
    public String toString() {
        return "Student{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", age=" + age +
                ", gender='" + gender + '\'' +
                ", address='" + address + '\'' +
                '}';
    }
}

						dao
  • 登录

UserDao

package com.ge.dao;

import java.sql.SQLException;

public interface UserDao {
    //登录
    public Boolean login(String userName, String passWord) throws SQLException, ClassNotFoundException;
}

UserDaoImpl

package com.ge.dao;

import com.ge.utils.JdbcUtil;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

public class UserDaoImpl implements UserDao{
    @Override
    public Boolean login(String userName ,String passWord) {
        Connection conn = null;
        PreparedStatement pre = null;
        ResultSet rs =null;
        try {
            conn = JdbcUtil.getConnection();
            String sql = "select * from t_user where username = ? and password = ?";
            pre = conn.prepareStatement(sql);
            pre.setObject(1, userName);
            pre.setObject(2, passWord);
            rs = pre.executeQuery();
            return rs.next();

        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            JdbcUtil.release(pre, conn, rs);
        }
        return false;
    }
}

StuDao

package com.ge.dao;

import com.ge.entity.Student;

import java.sql.SQLException;
import java.util.List;

public interface StuDao {
      int PAGE_SIZE = 5;
      List<Student> findStudentByPage(int currentPage) throws SQLException, ClassNotFoundException;
      int findStuCount() throws SQLException, ClassNotFoundException;
      void deleteByID(int id) throws SQLException, ClassNotFoundException;
      void insert(String name,int age,String gender,String address) throws SQLException, ClassNotFoundException;
      Student selectByID(int id) throws SQLException, ClassNotFoundException;
      void update(Student student) throws SQLException, ClassNotFoundException;

      List<Student> searchCount(String name,String gender) throws SQLException, ClassNotFoundException;
      List<Student> search(String name,String gender,int currentPage) throws SQLException, ClassNotFoundException;
}

StuDaoImpl

package com.ge.dao;

import com.ge.entity.Student;
import com.ge.utils.JdbcUtil;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

public class StuDaoImpl implements StuDao{
    @Override
    public List<Student> findStudentByPage(int currentPage) throws SQLException, ClassNotFoundException {
        Connection conn = JdbcUtil.getConnection();
        String sql = "select * from t_stu limit ? offset ?";
        PreparedStatement pre = conn.prepareStatement(sql);
        pre.setObject(1,PAGE_SIZE);
        pre.setObject(2, (currentPage-1)*PAGE_SIZE);
        ResultSet rs = pre.executeQuery();
        List<Student> list = new ArrayList<Student>();
        while (rs.next()){
            int id = rs.getInt("id");
            String name = rs.getString("name");
            int age = rs.getInt("age");
            String gender = rs.getString("gender");
            String address = rs.getString("address");
            Student student = new Student(id,name,age,gender,address);
            list.add(student);
        }
        JdbcUtil.release(pre,conn,rs);
        return list;
    }

    @Override
    public int findStuCount() throws SQLException, ClassNotFoundException {
        Connection conn = JdbcUtil.getConnection();
        String sql = "select count(*) from t_stu";
        PreparedStatement pre = conn.prepareStatement(sql);
        ResultSet rs = pre.executeQuery();
        int count = 0 ;
        while(rs.next()){
            count = rs.getInt(1);
        }

        JdbcUtil.release(pre, conn,rs);
        return count;
    }

    @Override
    public void deleteByID(int id) throws SQLException, ClassNotFoundException {
        Connection conn = JdbcUtil.getConnection();
        String sql = "delete from t_stu where id = ?";
        PreparedStatement pre = conn.prepareStatement(sql);
        pre.setInt(1,id);
        pre.executeUpdate();
        JdbcUtil.release(conn,pre);
    }

    @Override
    public void insert(String name, int age, String gender, String address) throws SQLException, ClassNotFoundException {
        Connection conn = JdbcUtil.getConnection();
        String sql = "insert into t_stu(name,age,gender,address) values(?,?,?,?) ";
        PreparedStatement pre = conn.prepareStatement(sql);
        pre.setString(1,name);
        pre.setInt(2,age);
        pre.setString(3,gender);
        pre.setString(4,address);
        pre.executeUpdate();
        JdbcUtil.release(conn,pre);
    }

    @Override
    public Student selectByID(int id) throws SQLException, ClassNotFoundException {
        Connection conn = JdbcUtil.getConnection();
        String sql = "select * from t_stu where id = ?";
        PreparedStatement pre = conn.prepareStatement(sql);
        pre.setInt(1,id);
        ResultSet rs = pre.executeQuery();
        rs.next();
        Student student = new Student(rs.getInt(1), rs.getString(2),rs.getInt(3),rs.getString(4),rs.getString(5));
        JdbcUtil.release(pre, conn, rs);
        return student;
    }

    @Override
    public void update(Student student) throws SQLException, ClassNotFoundException {
        Connection conn = JdbcUtil.getConnection();
        String sql = "update t_stu set name = ?, age = ?, gender = ?, address = ? where id = ?";
        PreparedStatement pre = conn.prepareStatement(sql);
        pre.setString(1,student.getName());
        pre.setInt(2,student.getAge());
        pre.setString(3,student.getGender());
        pre.setString(4,student.getAddress());
        pre.setInt(5,student.getId());
        pre.executeUpdate();
        JdbcUtil.release(conn,pre);
    }

    @Override
    public List<Student> searchCount(String name, String gender) throws SQLException, ClassNotFoundException {
        List<Student> list = new ArrayList<Student>();
        Connection conn = JdbcUtil.getConnection();
        String sql = "select * from t_stu where  1=1 ";
        if(!("".equals(name))){
            sql = sql + "and name = '"+name+"'";
        }
        if(!("".equals(gender))){
            sql = sql + "and gender = '"+gender+"'";
        }
        PreparedStatement pre = conn.prepareStatement(sql);
        ResultSet rs = pre.executeQuery();
        while (rs.next()){
            Student student = new Student(rs.getInt(1),rs.getString(2),rs.getInt(3),rs.getString(4),rs.getString(5));
            list.add(student);
        }
        return list;
    }

    @Override
    public List<Student> search(String name, String gender,int currentPage) throws SQLException, ClassNotFoundException {
        List<Student> list = new ArrayList<Student>();
        Connection conn = JdbcUtil.getConnection();
        String sql = "select * from t_stu where 1=1 ";

        if(!("".equals(name))){
            sql=sql+" and name = '"+name+"'";
        }
        if(!("".equals(gender))){
            sql = sql+" and gender ='"+gender+"' ";
        }
        sql = sql+"limit "+PAGE_SIZE+" offset "+(currentPage-1)*PAGE_SIZE+" ";
        System.out.println(sql);
        PreparedStatement pre = conn.prepareStatement(sql);
        ResultSet rs = pre.executeQuery();
        while (rs.next()){
            Student student = new Student(rs.getInt(1),rs.getString(2),rs.getInt(3),rs.getString(4),rs.getString(5));
            list.add(student);
        }
        JdbcUtil.release(pre, conn, rs);
        return list;
    }


}

						Service

StuService

package com.ge.service;

import com.ge.entity.Student;

import java.sql.SQLException;
import java.util.List;

public interface StuService {
    List<Student> findStudentByPage(int currentPage) throws SQLException, ClassNotFoundException;
    int findStuCount() throws SQLException, ClassNotFoundException;
    void deleteByID(int id) throws SQLException, ClassNotFoundException;
    void insert(String name,int age,String gender,String address) throws SQLException, ClassNotFoundException;
    Student selectByID(int id) throws SQLException, ClassNotFoundException;
    void update(Student student) throws SQLException, ClassNotFoundException;
    List<Student> searchCount(String name, String gender) throws SQLException, ClassNotFoundException;
    List<Student> search(String name,String gender,int currentPage) throws SQLException, ClassNotFoundException;
}

StuServiceImpl

package com.ge.service;

import com.ge.dao.StuDao;
import com.ge.dao.StuDaoImpl;
import com.ge.entity.Student;

import java.sql.SQLException;
import java.util.List;

public class StuServiceImpl implements StuService{
    @Override
    public List<Student> findStudentByPage(int currentPage) throws SQLException, ClassNotFoundException {
        StuDao stuDao = new StuDaoImpl();
        return stuDao.findStudentByPage(currentPage);

    }

    @Override
    public int findStuCount() throws SQLException, ClassNotFoundException {
        StuDao stuDao = new StuDaoImpl();

        return stuDao.findStuCount();
    }

    @Override
    public void deleteByID(int id) throws SQLException, ClassNotFoundException {
        StuDao stuDao = new StuDaoImpl();
        stuDao.deleteByID(id);
    }

    @Override
    public void insert(String name, int age, String gender, String address) throws SQLException, ClassNotFoundException {
        StuDao stuDao = new StuDaoImpl();
        stuDao.insert(name, age, gender, address);

    }

    @Override
    public Student selectByID(int id) throws SQLException, ClassNotFoundException {
        StuDao stuDao = new StuDaoImpl();
        return stuDao.selectByID(id);
    }

    @Override
    public void update(Student student) throws SQLException, ClassNotFoundException {
        StuDao stuDao = new StuDaoImpl();
        stuDao.update(student);

    }

    @Override
    public List<Student> searchCount(String name, String gender) throws SQLException, ClassNotFoundException {
        return  new StuDaoImpl().searchCount(name, gender);
    }

    @Override
    public List<Student> search(String name, String gender,int currentPage) throws SQLException, ClassNotFoundException {
        StuDao stuDao = new StuDaoImpl();
        return stuDao.search(name, gender, currentPage);
    }


}

							servlet

LoginServlet

package com.ge.servlet;

import com.ge.dao.UserDao;
import com.ge.dao.UserDaoImpl;
import com.ge.entity.Page;
import com.ge.service.StuService;
import com.ge.service.StuServiceImpl;

import javax.servlet.ServletContext;
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.sql.SQLException;
import static com.ge.dao.StuDao.PAGE_SIZE;

@WebServlet("/login")
public class loginServlet extends HttpServlet {


    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setCharacterEncoding("UTF-8");
        resp.setContentType("text/html; charset=UTF-8");
        String userName = req.getParameter("userName");
        String passWord = req.getParameter("passWord");
        UserDao userDao = new UserDaoImpl();
        try {
            Boolean isSucess = userDao.login(userName, passWord);
            if(isSucess){
                //统计访问量
                ServletContext servletContext = this.getServletContext();
                Integer count = (Integer) servletContext.getAttribute("count");
                if(count==null){
                    count=1;
                    servletContext.setAttribute("count",count);
                }else{
                    servletContext.setAttribute("count",++count);
                }

                Page page = new Page();
                StuService stuService = new StuServiceImpl();
                page.setList(stuService.findStudentByPage(1));
                req.getSession().setAttribute("userName", req.getParameter("userName"));
                page.setCurrentPage(1);
                page.setPageSize(PAGE_SIZE );
                page.setTotalSize(stuService.findStuCount());
                page.setTotalPage(stuService.findStuCount() % PAGE_SIZE == 0 ? stuService.findStuCount()/PAGE_SIZE : (stuService.findStuCount()/PAGE_SIZE+1));
                req.setAttribute("page",page);
                req.setAttribute("list",page.getList());
                req.getRequestDispatcher("stu.jsp").forward(req,resp);

            }else{
                req.setAttribute("message","密码错误,请重新输入");
                req.getRequestDispatcher("index.jsp").forward(req,resp);
            }

        } catch (Exception e) {
            e.printStackTrace();
        }

    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req,resp);
    }
}

PageServlet

package com.ge.servlet;

import com.ge.entity.Page;
import com.ge.service.StuService;
import com.ge.service.StuServiceImpl;

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 static com.ge.dao.StuDao.PAGE_SIZE;

@WebServlet("/pageServlet")
public class PageServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp){

        try {
            int currentPage = Integer.parseInt(req.getParameter("currentPage"));
            Page page = new Page();
            StuService stuService = new StuServiceImpl();
            page.setList(stuService.findStudentByPage(currentPage));
            page.setCurrentPage(currentPage);
            page.setTotalPage(stuService.findStuCount() % PAGE_SIZE ==0 ? stuService.findStuCount() / PAGE_SIZE : (stuService.findStuCount()/PAGE_SIZE+1));
            page.setPageSize(PAGE_SIZE);

            page.setTotalSize(stuService.findStuCount());
            req.setAttribute("list",page.getList());
            req.setAttribute("page",page);
            req.getRequestDispatcher("stu.jsp").forward(req,resp);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req,resp);
    }
}

DeleteServlet

package com.ge.servlet;

import com.ge.service.StuService;
import com.ge.service.StuServiceImpl;

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.sql.SQLException;


@WebServlet("/delete")
public class DeleteServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        int id = Integer.parseInt(req.getParameter("id"));
        StuService stuService = new StuServiceImpl();
        try {
            stuService.deleteByID(id);
        } catch (Exception e) {
            e.printStackTrace();
        }

        req.getRequestDispatcher("/pageServlet?currentPage=1").forward(req,resp);

    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req,resp);
    }

    @Override
    protected void doDelete(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        super.doDelete(req, resp);
    }
}

InsertServlet

package com.ge.servlet;

import com.ge.service.StuService;
import com.ge.service.StuServiceImpl;

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;

@WebServlet("/insert")
public class InsetServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

        try {
            String name = req.getParameter("name");
            int age = Integer.parseInt(req.getParameter("age"));
            String gender = req.getParameter("gender");
            String address = req.getParameter("address");
            StuService stuService = new StuServiceImpl();
            stuService.insert(name,age,gender,address);
            req.getRequestDispatcher("/pageServlet?currentPage=1").forward(req,resp);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req,resp);
    }
}

SelectByIDServlet

package com.ge.servlet;

import com.ge.service.StuService;
import com.ge.service.StuServiceImpl;

import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


@WebServlet("/selectByID")
public class SelectByIDServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp){
        try {
            int id = Integer.parseInt(req.getParameter("id"));
            StuService stuService = new StuServiceImpl();
            req.setAttribute("student",stuService.selectByID(id));
            req.getRequestDispatcher("/update.jsp").forward(req,resp);
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) {
        doGet(req,resp);
    }
}

UpdateServlet

package com.ge.servlet;

import com.ge.entity.Student;
import com.ge.service.StuService;
import com.ge.service.StuServiceImpl;

import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/updateServlet")
public class UpdateServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp){

        try {
            Student student = new Student(Integer.parseInt(req.getParameter("id")),req.getParameter("name"),Integer.parseInt(req.getParameter("age")),req.getParameter("gender"),req.getParameter("address"));
            StuService stuService = new StuServiceImpl();
            stuService.update(student);

            req.getRequestDispatcher("/pageServlet?currentPage=1").forward(req,resp);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp){
        doGet(req,resp);
    }
}



SearchServlet

package com.ge.servlet;

import com.ge.entity.Page;
import com.ge.entity.Student;
import com.ge.service.StuService;
import com.ge.service.StuServiceImpl;
import static com.ge.dao.StuDao.PAGE_SIZE;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import java.util.List;

@WebServlet("/search")
public class searchServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp)  {

        try {
            req.setCharacterEncoding("UTF-8");
            resp.setContentType("text/html; charset=UTF-8");
            String name = req.getParameter("name");
            String gender = req.getParameter("gender");

            req.setAttribute("name",name);
            req.setAttribute("gender",gender);
            System.out.println(name+gender);
            StuService stuService = new StuServiceImpl();
            int currentPage = Integer.parseInt(req.getParameter("currentPage"));
            List<Student> list = stuService.search(name, gender,currentPage);
            Page page = new Page();
            page.setList(list);
            req.setAttribute("list",list);
            page.setPageSize(PAGE_SIZE);
            page.setCurrentPage(currentPage);
            List<Student> lists = stuService.searchCount(name, gender);
            page.setTotalSize(lists.size());
            page.setTotalPage(lists.size()%PAGE_SIZE == 0 ? lists.size()/PAGE_SIZE : (lists.size()/PAGE_SIZE+1));

            req.setAttribute("page",page);

            req.getRequestDispatcher("/search.jsp").forward(req,resp);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp)  {
        doGet(req,resp);
    }
}

配置文件:datebase.properties

driverClass:com.mysql.jdbc.Driver
url:jdbc:mysql://localhost:3306/mybase
userName:root
passWord:123456

pom.xml

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.ge.stuMangers</groupId>
  <artifactId>stuMangers</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>war</packaging>

  <name>stuMangers Maven Webapp</name>
  <!-- FIXME change it to the project's website -->
  <url>http://www.example.com</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>

    <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.6</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
      <scope>provided</scope>
    </dependency>

    <!-- https://mvnrepository.com/artifact/javax.servlet/jstl -->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/taglibs/standard -->
    <dependency>
      <groupId>taglibs</groupId>
      <artifactId>standard</artifactId>
      <version>1.1.2</version>
    </dependency>

  </dependencies>

  <build>
    <finalName>stuMangers</finalName>
    <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
      <plugins>
        <plugin>
          <artifactId>maven-clean-plugin</artifactId>
          <version>3.1.0</version>
        </plugin>
        <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
        <plugin>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.0.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.8.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.22.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-war-plugin</artifactId>
          <version>3.2.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-install-plugin</artifactId>
          <version>2.5.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-deploy-plugin</artifactId>
          <version>2.8.2</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>

								jsp

index.jsp

<%@page language="java" pageEncoding="UTF-8" %>
<%@ page isELIgnored="false" %>
<html>
<body>
<form action="/login" method="post">
    账号:<input type="text" name="userName"><br>
    密码:<input type="password" name="passWord"><br><p style="color: red">${message}</p><br>
    <input type="submit" value="登录">
</form>

</body>

</html>

stu.jsp

<%@ page isELIgnored="false"%> <%--关于el标签不起作用--%>
<%@ page language="java" contentType="text/html;charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<html>
<head>
    <title>>学生管理系统</title>
</head>
<body>

<h1 style="text-align: center">学生管理系统</h1>
<form action="/search?currentPage=${1}" method="post">

    <p style="margin-left:1000px ">
        欢迎${userName}登录 访问量:${count}
    </p>
    <table border="1" width="700px" align="center">

        <tr style="text-align: center">

            <td colspan="5">
                姓名:<input type="text" name="name">
                性别:
                <select name="gender" size="1">
                    <option value="">--请选择--</option>
                    <option value="男" >男</option>
                    <option value="女" >女</option>
                    <input type="submit" value="查询">
                </select>
            <td><a href="/insertStu.jsp">添加</a></td>

            </td>
        </tr>

        <tr align="center">
            <th>id</th>
            <th>姓名</th>
            <th>年龄</th>
            <th>性别</th>
            <th>国家</th>
            <th>操作</th>
        </tr>
        <c:forEach items="${list}" var="stu">
            <tr align="center">
                <td>${stu.id }</td>
                <td>${stu.name }</td>
                <td>${stu.age}</td>
                <td>${stu.gender }</td>
                <td>${stu.address}</td>
                <td><a href="/selectByID?id=${stu.id}">修改</a> <a href="/delete?id=${stu.id}">删除</a></td>
            </tr>
        </c:forEach>

        <tr>
            <td colspan="6">
                第${page.currentPage}/${page.totalPage}页&nbsp;&nbsp;&nbsp;
                每页显示${page.pageSize}条数据&nbsp;&nbsp;&nbsp;
                总人数:${page.totalSize}&nbsp;&nbsp;&nbsp;
                <c:if test="${page.currentPage != 1}">
                    <a href="/pageServlet?currentPage=1">首页</a>|<a href="/pageServlet?currentPage=${page.currentPage-1}">上一页</a>&nbsp;&nbsp;
                </c:if>
                <c:forEach begin="1" end="${page.totalPage}" var="i">
                    <c:if test="${page.currentPage == i}">
                        ${i}
                    </c:if>
                    <c:if test="${page.currentPage != i}">
                        <a href="/pageServlet?currentPage=${i}">${i}</a>

                    </c:if>
                </c:forEach>


                <c:if test="${page.currentPage != page.totalPage}">
                    <a href="/pageServlet?currentPage=${page.currentPage+1}">下一页</a>|<a href="/pageServlet?currentPage=${page.totalPage}">尾页</a>
                </c:if>
            </td>
        </tr>
    </table>
</form>

</body>
</html>

insert.jsp


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>添加学生</title>
</head>
<body>
<h1 align="center">添加学生信息</h1>
<form action="/insert" method="get">
    <table border="1" width="700px" align="center">
        <tr>
            <td>姓名</td>
            <td><input type="text" name = "name"></td>
        </tr>
        <tr>
            <td>年龄</td>
            <td><input type="text" name="age"></td>
        </tr>
        <tr>
            <td>性别</td>
            <td><input type="text" name="gender"></td>
        </tr>
        <tr>
            <td>国家</td>
            <td> <input type="text" name="address"></td>
        </tr>
        <tr>
            <td align="center"><input type="submit" value="提交"></td>
        </tr>
    </table>

</form>

</body>
</html>

update.jsp

<%@ page isELIgnored="false"%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

<html>
<head>
    <title>添加学生</title>
</head>
<body>
<h1 align="center">修改学生信息</h1>
<form action="/updateServlet" method="get">
    <input type="hidden" name = "id" value="${student.id}">

    <table border="1" width="700px" align="center">
            <tr>
                <td>姓名</td>
                <td><input type="text" name="name" value="${student.name}"></td>
            </tr>
            <tr>
                <td>年龄</td>
                <td><input type="text" name="age" value="${student.age}"></td>
            </tr>
            <tr>
                <td>性别</td>
                <td><input type="text" name="gender" value="${student.gender}"></td>
            </tr>
            <tr>
                <td>国家</td>
                <td><input type="text" name="address" value="${student.address}"></td>
            </tr>
        <tr>
            <td colspan="2"><input type="submit" value="修改"> <a href="/pageServlet?currentPage=${1}">返回</a></td>
        </tr>
    </table>
</form>

</body>
</html>

search.jsp

<%@ page isELIgnored="false"%> <%--关于el标签不起作用--%>
<%@ page language="java" contentType="text/html;charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<html>
<head>
    <title>>学生管理系统</title>
</head>
<body>

<h1 style="text-align: center">${gender}学生信息</h1>
<form action="/search?currentPage=${1}" method="post">

    <p style="margin-left:1000px ">
        欢迎${userName}登录 访问量:${count}
    </p>
    <table border="1" width="700px" align="center">

        <tr style="text-align: center">

            <td colspan="5">
                姓名:<input type="text" name="name">
                性别:
                <select name="gender" size="1">
                    <option value="">--请选择--</option>
                    <option value="男" >男</option>
                    <option value="女" >女</option>
                    <input type="submit" value="查询">
                </select>
            <td><a href="/insertStu.jsp">添加</a></td>

            </td>
        </tr>

        <tr align="center">
            <th>id</th>
            <th>姓名</th>
            <th>年龄</th>
            <th>性别</th>
            <th>国家</th>
            <th>操作</th>
        </tr>

        <c:forEach items="${list}" var="stu">
            <tr align="center">
                <td>${stu.id }</td>
                <td>${stu.name }</td>
                <td>${stu.age}</td>
                <td>${stu.gender }</td>
                <td>${stu.address}</td>
                <td><a href="/selectByID?id=${stu.id}">修改</a> <a href="/delete?id=${stu.id}">删除</a></td>
            </tr>

        </c:forEach>
        <tr>
            <td colspan="6">
                第${page.currentPage}/${page.totalPage}页&nbsp;&nbsp;&nbsp;
                每页显示${page.pageSize}条数据&nbsp;&nbsp;&nbsp;
                人数:${page.totalSize}&nbsp;&nbsp;&nbsp;
                <c:if test="${page.currentPage != 1}">
                    <a href="/search?currentPage=1&name=${name}&gender=${gender}">首页</a>|<a href="/search?currentPage=${page.currentPage-1}&name=${name}&gender=${gender}">上一页</a>&nbsp;&nbsp;
                </c:if>
                <c:forEach begin="1" end="${page.totalPage}" var="i">
                    <c:if test="${page.currentPage == i}">
                        ${i}
                    </c:if>
                    <c:if test="${page.currentPage != i}">
                        <a href="/search?currentPage=${i}&name=${name}&gender=${gender}">${i}</a>

                    </c:if>
                </c:forEach>

                <c:if test="${page.currentPage != page.totalPage}">
                    <a href="/search?currentPage=${page.currentPage+1}&name=${name}&gender=${gender}">下一页</a>|<a href="/search?currentPage=${page.totalPage}&name=${name}&gender=${gender}">尾页</a>
                </c:if>
            </td>
        </tr>
    </table>
</form>

</body>
</html>

猜你喜欢

转载自blog.csdn.net/weixin_43904316/article/details/89491470