定义一个servlet ,在servlet中存在一个集合,集合中存入5名学生(id ,name,sex) 在jsp页面中,请使用jstl的方式将集合中的数据以表格的形式展示
时间: 2024-12-12 15:32:29 浏览: 16
在Servlet中,你可以通过处理HTTP请求并填充数据来创建一个动态的集合。首先,在Servlet中,例如一个`StudentServlet.java`,你可以这样做:
```java
import javax.servlet.*;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
@WebServlet("/StudentServlet")
public class StudentServlet extends HttpServlet {
private List<Student> studentList = new ArrayList<>();
public void init() throws ServletException {
// 添加5名学生到集合
for (int i = 0; i < 5; i++) {
Student student = new Student();
student.setId(i);
student.setName("Student " + (i+1));
student.setSex("Male"); // 或者Female,根据需要设定性别
studentList.add(student);
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setAttribute("studentList", studentList); // 将集合传递给JSP
RequestDispatcher dispatcher = getServletContext().getRealPath("/")
+ "WEB-INF/views/student.jsp";
dispatcher.forward(request, response);
}
// ...其他业务逻辑...
}
class Student {
private int id;
private String name;
private String sex;
// getters and setters
}
```
在对应的JSP页面`student.jsp`中,可以使用JSTL标签库(c:forEach、c:out等)来遍历和显示集合:
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Student Table</title>
</head>
<body>
<table border="1">
<tr>
<th>ID</th>
<th>Name</th>
<th>Sex</th>
</tr>
<c:forEach var="student" items="${studentList}">
<tr>
<td><c:out value="${student.id}"/></td>
<td><c:out value="${student.name}"/></td>
<td><c:out value="${student.sex}"/></td>
</tr>
</c:forEach>
</table>
</body>
</html>
```
在这个例子中,JSP会循环遍历名为`studentList`的对象,然后将每个学生的ID、姓名和性别插入到表格的不同单元格中。
阅读全文