我正在尝试从我的数据库中打印数据作为锚标记,并在点击它时将值(在rs.getString(1)中)传递给下一个jsp文件(demo.jsp)。我试图在文件demo.jsp中创建一个会话并从中检索它的值,但它总是打印数据库中的最后一个值。我知道它是因为每次循环运行时会话被替换。我能够在给定文件中打印数据,但是将值传递给demo.jsp时会出现问题。有没有其他方法可以做到这一点
<%
try
{
String cars2=request.getParameter("cars");
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@Amit-PC:1521:XE","system","tiger");
PreparedStatement st=con.prepareStatement("select thread from thread_all where car=?");
st.setString(1,cars2);
ResultSet rs;
rs=st.executeQuery();
while(rs.next())
{
%>
<div class="rows">
<div class="col-lg-12 well">
<% session.setAttribute("posttopic",rs.getString(1)); %>
<a href="demo.jsp">asked :<%out.print(rs.getString(1));%>
</a>
<br>
</div>
</div>
<%
}
}
catch(Exception e)
{
}
%>
答案 0 :(得分:0)
尝试将数据存储在集合中,然后将集合对象存储在会话中。然后使用此集合对象在下一页中显示数据。
答案 1 :(得分:0)
我为自己的问题找到了解决方案。 我通过传递锚标签本身的值来做到这一点。
<a href="demo.jsp?id1=<%=rs.getString(2) %>">><%=rs.getString(1)%></a>
然后使用
在demo.jsp中获取它String var=request.getParameter("id1");