我想将从数据库检索到的多个数据值发送到另一个servlet或jsp。
这是我的代码
PreparedStatement st= conn.prepareStatement("select name from users where uname=? and pword=?");
st.setString(1, uname);
st.setString(2, pword);
ResultSet rs= st.executeQuery();
if(rs.next())
{
if(uname.equals(uname) && pword.equals(pword))
{
request.setAttribute("name", rs.getString("name"));
request.setAttribute("uname", uname);
HttpSession ss= request.getSession();
ss.setAttribute("name",rs.getString("name"));
ss.setAttribute("uname",rs.getString("uname"));
response.sendRedirect("Dash.jsp");
}
}
我想将名称和uname(用户名)发送到另一个名为“Dash.jsp”的jsp文件。但它没有用。如果我评论以下任何一个代码:
ss.setAttribute("name",rs.getString("name"));
ss.setAttribute("uname",uname));
然后servlet将数据传递给Dash.jsp
我还尝试通过应用以下代码来使用RequestDispatcher:
request.setAttribute("name", rs.getString("name");
request.setAttribute("uname",uname);
String destination = "Dash.jsp";
RequestDispatcher rd =
getServletContext().getRequestDispatcher(destination);
rd.forward(request, response);
即使我给了destination =“/ WEB-INF / pages / Dash.jsp”。然后它也不会去Dash.jsp页面。
任何人都可以告诉我如何在这个案例名称中发送多个值或数据,从一个servlet或jsp到另一个servlet或者unp。
答案 0 :(得分:0)
当您将任何内容存储为请求属性或会话属性时,您可以使用表达式语言在jsp中访问它们。
假设您存储了您的姓名并将其命名为会话属性,如下所示
ss.setAttribute("name",rs.getString("name"));
ss.setAttribute("uname",rs.getString("uname"));
你可以在jsp中访问它们
<p>${name}</p>
<p>${uname}</p>
我提到了p标签,例如,您可以使用 $ {Attribute Name}
在jsp中的任何地方使用它们希望这有帮助, 如果您还有其他需要,请发布。