Java 将结果集从Servlet传递到JSP
我希望将结果集从Servlet传递到JSP页面,并将其值保存在JSP页面中 以下是Servlet的代码: 受保护的void doPost HttpServletRequest请求、HttpServletResponse响应 抛出ServletException、IOException { 字符串用户名=request.getParameterusername; 字符串密码=request.getParameterpassword; PrintWriter out=response.getWriter; 数据选择=新数据用户名、密码; 试一试{ 布尔结果=选择。选择用户名、密码; 如果结果{ ResultSet rset=select.SelectAllusername,密码; 请求。setAttributeuser,rset; getServletConfig.getServletContext .getRequestDispatcher/dashboard.jsp .转发请求、响应; }否则 out.print请检查您的用户名和密码; }捕获异常e{ 似乎有一个例外+e; } } 这里调用的两个函数分别返回布尔值和ResultSet值 Select函数返回布尔值,其中as SelectAll返回结果集 我的JSP代码如下所示: 用户名: 电邮: 联系人:Java 将结果集从Servlet传递到JSP,java,jsp,servlets,el,resultset,Java,Jsp,Servlets,El,Resultset,我希望将结果集从Servlet传递到JSP页面,并将其值保存在JSP页面中 以下是Servlet的代码: 受保护的void doPost HttpServletRequest请求、HttpServletResponse响应 抛出ServletException、IOException { 字符串用户名=request.getParameterusername; 字符串密码=request.getParameterpassword; PrintWriter out=response.getWrit
要继续执行resultset,请初始化对象用户,该用户应具有getter和setter
ResultSet rset=select.SelectAll(username,password);
if (rset.next()){
User user = new User();
user.setUsername(rset.get("username"));
user.setEmail(rset.get("email"));
user.setContact(rset.get("contact"));
request.setAttribute("user",user);
getServletContext().getRequestDispatcher("/dashboard.jsp")
.forward(request,response);
}
要继续执行resultset,请初始化对象用户,该用户应具有getter和setter
ResultSet rset=select.SelectAll(username,password);
if (rset.next()){
User user = new User();
user.setUsername(rset.get("username"));
user.setEmail(rset.get("email"));
user.setContact(rset.get("contact"));
request.setAttribute("user",user);
getServletContext().getRequestDispatcher("/dashboard.jsp")
.forward(request,response);
}
不要通过结果集!相反,按照模式创建JavaPOJO类,该类中的字段将反映数据库中的列。通过while loop whilers.next{…}从ResultSet提取数据,将值分配给先前创建的POJO类实例,并将该实例添加到列表中,以防传递多个用户。如果有多个用户,则返回列表;如果只有一个用户,则返回一个实例
将对象列表设置为属性,并在多个用户的情况下通过JSP中的JSTL forEach循环对其进行迭代。不要传递ResultSet!相反,按照模式创建JavaPOJO类,该类中的字段将反映数据库中的列。通过while loop whilers.next{…}从ResultSet提取数据,将值分配给先前创建的POJO类实例,并将该实例添加到列表中,以防传递多个用户。如果有多个用户,则返回列表;如果只有一个用户,则返回一个实例
将对象列表设置为属性,并在多个用户的情况下通过JSP中的JSTL forEach循环对其进行迭代。那么您面临的错误或异常是什么?您确定ResultSet类包含username属性吗?!!我不会直接将结果集传递给JSP,而是从结果集中提取信息,并在适当的DTO中公开它。Dave是对的,像这样使用结果集不是一个好主意,看看你面临什么错误或异常?你确定ResultSet类包含username属性吗?!!我不会将结果集直接传递给JSP,而是从结果集中提取信息,并将其暴露在适当的DTO中。Dave是对的,使用这样的结果集不是一个好主意,请参阅Username:$user.Username Email:$user.Email Contact:$user.Contact这是我在创建类并将结果集的内容添加到它之后得到的输出,因为大括号用于EL表达式${user.Email}。谢谢先生你帮了我一个忙用户名:$user.username电子邮件:$user.Email联系人:$user.Contact这是我在制作类并将结果集的内容添加到它之后得到的输出,因为括号用于EL表达式${user.Email}。谢谢先生,你帮了我很多