帮我用javaweb写一下学生信息管理系统的servlet类
当然可以,以下是一个简单的学生信息管理系统的Servlet类的示例:
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/student")
public class StudentServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private List<Student> students;
public void init() {
students = new ArrayList<>();
students.add(new Student("John", "Doe", 20));
students.add(new Student("Jane", "Smith", 22));
}
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action = request.getParameter("action");
if (action == null) {
action = "list";
}
switch (action) {
case "list":
listStudents(request, response);
break;
case "add":
showAddForm(request, response);
break;
case "edit":
showEditForm(request, response);
break;
case "delete":
deleteStudent(request, response);
break;
default:
listStudents(request, response);
break;
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action = request.getParameter("action");
if (action == null) {
action = "list";
}
switch (action) {
case "add":
addStudent(request, response);
break;
case "edit":
updateStudent(request, response);
break;
default:
listStudents(request, response);
break;
}
}
private void listStudents(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setAttribute("students", students);
request.getRequestDispatcher("list.jsp").forward(request, response);
}
private void showAddForm(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.getRequestDispatcher("add.jsp").forward(request, response);
}
private void showEditForm(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int id = Integer.parseInt(request.getParameter("id"));
Student student = getStudentById(id);
request.setAttribute("student", student);
request.getRequestDispatcher("edit.jsp").forward(request, response);
}
private void addStudent(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String firstName = request.getParameter("firstName");
String lastName = request.getParameter("lastName");
int age = Integer.parseInt(request.getParameter("age"));
students.add(new Student(firstName, lastName, age));
response.sendRedirect("student");
}
private void updateStudent(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int id = Integer.parseInt(request.getParameter("id"));
String firstName = request.getParameter("firstName");
String lastName = request.getParameter("lastName");
int age = Integer.parseInt(request.getParameter("age"));
Student student = getStudentById(id);
student.setFirstName(firstName);
student.setLastName(lastName);
student.setAge(age);
response.sendRedirect("student");
}
private void deleteStudent(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int id = Integer.parseInt(request.getParameter("id"));
Student student = getStudentById(id);
students.remove(student);
response.sendRedirect("student");
}
private Student getStudentById(int id) {
for (Student student : students) {
if (student.getId() == id) {
return student;
}
}
return null;
}
}
此示例中的Servlet类包含了以下功能:
- 显示学生列表
- 显示添加学生表单
- 显示编辑学生表单
- 添加学生
- 更新学生信息
- 删除学生
你可以根据自己的需求修改和扩展这个示例。请注意,此示例仅用于演示目的,可能需要根据你的具体需求进行适当的修改。
原文地址: https://www.cveoy.top/t/topic/i4Te 著作权归作者所有。请勿转载和采集!