JavaWeb课程设计项目实战(10)——项目编码实践7


  • 本文原创作者:谷哥的小弟
  • 作者博客地址:http://blog.csdn.net/lfdfhl

在这里插入图片描述
在本节教程中实现学生搜索功能,该功能主要流程如下:

  • 1、搜索满足关键字的学生
  • 2、跳转到学生列表显示搜索结果

搜索页面

当在学生列表首页搜索框中填入关键字点击搜索后将会把搜索操作交由SearchStudentServlet处理。代码如下:

    <form action="${pageContext.request.contextPath}/SearchStudentServlet" method="post">
        <%--搜索学生--%>
        <input type="text" name="content" placeholder="请输入姓名或学号">
        <input type="submit" value="搜索">
    </form>

图示如下:

在这里插入图片描述

SearchStudentServlet

请在servlet包下创建SearchStudentServlet,代码如下:

package com.cn.servlet;

import com.cn.util.C3P0Utils;
import com.cn.bean.Student;
import javax.servlet.RequestDispatcher;
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.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
/**
 * 本文作者:谷哥的小弟
 * 博客地址:http://blog.csdn.net/lfdfhl
 */

@WebServlet(name = "SearchStudentServlet", urlPatterns = "/SearchStudentServlet")
public class SearchStudentServlet extends HttpServlet {
    
    
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
    
        String content = request.getParameter("content");
        ArrayList<Student> studentArrayList = new ArrayList<Student>();
        Connection connection = null;
        PreparedStatement preparedStatement = null;
        ResultSet resultSet = null;
        try {
    
    
            connection = C3P0Utils.getConnection();
            String sql = "SELECT * FROM student WHERE name like ? or id = ?";
            preparedStatement = connection.prepareStatement(sql);
            preparedStatement.setObject(1, "%" + content + "%");
            preparedStatement.setObject(2, content);
            preparedStatement.executeQuery();
            resultSet = preparedStatement.executeQuery();
            while (resultSet.next()) {
    
    
                int id = resultSet.getInt("id");
                String name = resultSet.getString("name");
                int age = resultSet.getInt("age");
                String gender = resultSet.getString("gender");
                String hobby = resultSet.getString("hobby");
                Student student = new Student(id, name, age, gender, hobby);
                studentArrayList.add(student);
            }
        } catch (Exception e) {
    
    
            e.printStackTrace();
        } finally {
    
    
            C3P0Utils.release(connection, preparedStatement, resultSet);
        }
        request.setAttribute("students", studentArrayList);
        RequestDispatcher requestDispatcher = request.getRequestDispatcher("/studentList.jsp");
        requestDispatcher.forward(request, response);
    }

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

图示如下:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/lfdfhl/article/details/131709203