将记录显示到jsp页面
我无法将记录从表中获取到jsp页面。我也可以保存,但在检索时遇到问题 列表的我的UserDao将记录显示到jsp页面,jsp,servlets,Jsp,Servlets,我无法将记录从表中获取到jsp页面。我也可以保存,但在检索时遇到问题 列表的我的UserDao protected List<User> userList(){ List<User> listAllUser = new ArrayList<User>(); try { Class.forName("com.mysql.jdbc.Driver"); Connection con = DriverManager.
protected List<User> userList(){
List<User> listAllUser = new ArrayList<User>();
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection(url,user,pass);
String query = "Select * from user";
PreparedStatement ps = con.prepareStatement(query);
ResultSet rs = ps.executeQuery();
while (rs.next()){
String name = rs.getString("name");
String email= rs.getString("email");
User u = new User();
u.setName(name);
u.setEmail(email);
}
}
catch (SQLException | ClassNotFoundException e){
e.printStackTrace();
}
return listAllUser;
}
protectedlist userList(){
List listaluser=new ArrayList();
试一试{
Class.forName(“com.mysql.jdbc.Driver”);
Connection con=DriverManager.getConnection(url、用户、通行证);
String query=“选择*来自用户”;
PreparedStatement ps=con.prepareStatement(查询);
结果集rs=ps.executeQuery();
while(rs.next()){
字符串名称=rs.getString(“名称”);
String email=rs.getString(“电子邮件”);
用户u=新用户();
u、 集合名(名称);
u、 设置电子邮件(电子邮件);
}
}
catch(SQLException | ClassNotFoundException e){
e、 printStackTrace();
}
返回listaluser;
}
我的Servlet类
@WebServlet("/ListServlet")
public class ListServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
super.doPost(req, resp);
String name = req.getParameter("name");
UserDao ud = new UserDao();
List<User> userList = ud.userList();
req.setAttribute("userList",userList);
RequestDispatcher rd = req.getRequestDispatcher("UserList.jsp");
rd.forward(req,resp);
}
@WebServlet(“/ListServlet”)
公共类ListServlet扩展了HttpServlet{
@凌驾
受保护的void doPost(HttpServletRequest-req,HttpServletResponse-resp)引发ServletException,IOException{
super.doPost(请求、响应);
字符串名称=req.getParameter(“名称”);
UserDao ud=newuserdao();
List userList=ud.userList();
请求setAttribute(“用户列表”,用户列表);
RequestDispatcher rd=req.getRequestDispatcher(“UserList.jsp”);
转发(请求、响应);
}
这是我的jsp页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
<title>List User</title>
</head>
<body>
<table>
<thead>
<tr>
<th>name</th>
<th>email</th>
</tr>
</thead>
<c:forEach var="user" items="${userList}">
<tr>
<td>
<c:out value="${user.name}"></c:out>
</td>
<td>
<c:out value="${user.name}"></c:out>
</td>
</tr>
</c:forEach>
</table>
</body>
</html>
列表用户
名称
电子邮件
我的用户类也有字段和G/T
罐子放好了。
请帮帮我。Add
listaluser.Add(u);
在UserDao.userList()中的循环时,在末尾添加
method-您正在创建用户对象,但忘记将其添加到列表中!;-)@jozef感谢您的帮助性回答,但我再次无法列出记录..它给了我一个空的jsp页面有趣…您如何访问该页面?您是否在上一页提交表单?因为您的servlet实现了doPost
方法,它用于服务POST请求,即表单提交。因此,如果您通过简单地键入http://localhost:8080/yourAppName/ListServlet
进入浏览器地址字段,您正在使用GET请求。然后尝试将doPost
更改为doGet
。@Jozef感谢您的快速回复…但问题仍然存在:(您是否至少看到了表的标题?日志/控制台文件中是否有错误?