Mysql 在另一个jsp文件中使用ResultSet值
我试图在另一个jsp文件中使用resultset值,但我在网站上得到了Mysql 在另一个jsp文件中使用ResultSet值,mysql,jsp,session,resultset,Mysql,Jsp,Session,Resultset,我试图在另一个jsp文件中使用resultset值,但我在网站上得到了null <% try { Class.forName("com.mysql.jdbc.Driver").newInstance(); Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/database", "root", "root"); Statement st =
null
<%
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/database", "root", "root");
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("select * from users");
String var = null;
while (rs.next()) {
var = rs.getString(2);
}
session.setAttribute("var1", var);
response.sendRedirect("Select.jsp");
} catch (Exception e) {
}
%>
Select.jsp:
<% out.println(request.getParameter("var1")); %>
jsp正在显示
null
。问题出在哪里?我认为问题在于您正在会话
范围中设置值:
session.setAttribute("var1", var);
request.getParameter("var1")
但您正试图从请求
范围中获取它:
session.setAttribute("var1", var);
request.getParameter("var1")
因此,保持相同的范围(要么是会话
要么是请求
)
另外,您应该避免在JSP中使用scriplets,因为这是不推荐的。我认为问题在于您正在
会话
范围中设置值:
session.setAttribute("var1", var);
request.getParameter("var1")
但您正试图从请求
范围中获取它:
session.setAttribute("var1", var);
request.getParameter("var1")
因此,保持相同的范围(要么是会话
要么是请求
)
另外,您应该避免在JSP中使用scriplets,因为这是不推荐的。您使用
setAttribute
设置了参数,但尝试使用getParameter
获取参数
使用getAttributes
方法获取结果:-
<% out.println((String)request.getAttribute("var1")); %>
或与
<% out.println(session.getAttribute("var1")); %>
您使用
setAttribute
设置了参数,但您正在尝试使用getParameter
获取参数
使用getAttributes
方法获取结果:-
<% out.println((String)request.getAttribute("var1")); %>
或与
<% out.println(session.getAttribute("var1")); %>