我想从我的数据库中检索信息。我使用html并通过jsp从用户动态获取输入,我从数据库(Mysql)中获取信息。以下是jsp代码
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/indi", "root", "");
Statement statement = connection.createStatement();
String id1 = request.getParameter("id");
ResultSet resultset = statement.executeQuery("select * from books where author = '" + id1 + "'") ;
if(!resultset.next()) {
out.println("Sorry, could not find that publisher. ");
} else {
%>
<TABLE BORDER="1">
<TR>
<TH>name</TH>
<TH>author</TH>
<TH>money</TH>
<TH>company</TH>
</TR>
<TR>
<TD> <%= resultset.getString(1) %> </TD>
<TD> <%= resultset.getString(2) %> </TD>
<TD> <%= resultset.getString(3) %> </TD>
<TD> <%= resultset.getString(4) %> </TD>
</TR>
</TABLE>
<BR>
<%
}
}
%>
我使用author作为关键字来检索数据。现在我的数据库中有2个具有相同名称的作者,但是上面的代码仅获取一个作者信息,即第一个作者信息而另一个则保留。我应该在此代码中的哪里修改它将检索两个数据
最佳答案
尝试在结果集上循环。
while(rs.next( )){
%>
<TABLE BORDER="1">
<TR>
<TH>name</TH>
<TH>author</TH>
<TH>money</TH>
<TH>company</TH>
</TR>
<TR>
<TD> <%= resultset.getString(i) %> </TD>
<TD> <%= resultset.getString(i+1) %> </TD>
<TD> <%= resultset.getString(i+2) %> </TD>
<TD> <%= resultset.getString(i+3) %> </TD>
</TR>
</TABLE>
<BR>
<% } %>
关于javascript - 如何使用jsp从数据库检索数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13528557/