我有以下代码:
<%
for (int i = 0; i < rs.getFetchSize(); i++) {
System.out.print("test");
//blah
%>
<div id="Test<%= out.print(i) %>">
<div class="<%= oddOrEven(i)%>Header">
<div class="<%= oddOrEven(i)%>A">Test<% out.print(i);%></div>
<div class="<%= oddOrEven(i)%>B">
//Stuff here
Odd或者甚至只是根据我传递给它的数字来回应单词奇数或偶数,这应该使我的css样式在灰色之间交替。
当我编译页面时,它可以工作,但这部分完全省略,不会出现在源代码中。有人可以帮我搞定吗?
答案 0 :(得分:3)
ResultSet#getFetchSize()
不会像您期望的那样返回返回记录的数量。它只返回配置的提取大小。例如,它可能只返回0
,具体取决于JDBC驱动程序配置和语义。
只需使用ResultSet#next()
the usual way将光标移动到下一行。
for (int i = 0; rs.next(); i++) {
也就是说,在JSP文件中编写Java代码是officially discouraged since a decade。我建议也在这方面工作。
答案 1 :(得分:0)
这个怎么样:
<%
for(int i = 0; i < rs.getFetchSize(); i++)
{
%>
<div id="Test<%= i%>">
<div class="<%= oddOrEven(i)%>Header">
<div class="oddOrEven(i)A">Test<%= i%></div>
<%
}
%>
你缺少一个完成for循环的最后一个大括号
此外,您无需提供... out.println()...&lt;%=%&gt;会为你做那件事