Java 在每个打印表格上方显示标题

Java 在每个打印表格上方显示标题,java,html,jsp,Java,Html,Jsp,我需要你的助手和帮助来解决问题,同时在表格中显示记录。我正在寻找一个组标题,放置在每个打印表的上方,以显示其相关的类别和子类别,以及每个表的记录编号,并显示在表的顶部 该表包含类别、子类别和名称的列。例: 类别子类别名称 美国零售协会 康乐及文化事务署 规格零售CCC 我要找的是以下布局: 记录的类别/子类别编号–类似于组标题 名称–国家..等–表格标题 表格记录 下面是我的代码: <% //Retrieve the values from the DB while (rs.next())

我需要你的助手和帮助来解决问题,同时在表格中显示记录。我正在寻找一个组标题,放置在每个打印表的上方,以显示其相关的类别和子类别,以及每个表的记录编号,并显示在表的顶部

该表包含类别、子类别和名称的列。例:

类别子类别名称

美国零售协会

康乐及文化事务署

规格零售CCC

我要找的是以下布局:

记录的类别/子类别编号–类似于组标题

名称–国家..等–表格标题

表格记录

下面是我的代码:

<%
//Retrieve the values from the DB
while (rs.next())
{
    category_name1=rs.getString("category_name");
    subcategory_name1=rs.getString("subcategory_name");
    //to compare the existing category with the previous one and to display group header
    if ((category_name1).equals(temp_category_name) ) {
        category_name1="";
%>
<%=category_name1%> / <%=subcategory_name1%> <%=count%>  //Currently it is showing duplicate values many times and the count is wrong
<%
}
if (!(subcategory_name1).equals(temp_subcategory_name)) {
    count=0;
%>
<table width="80%">
    <thead>
        <tr>
            <th>No.</th>
            <th> Name</th>
            <th>Country </th>
        </tr>
    </thead>
<%
}
%>
    <tbody>
<%
    name=rs.getString("name");
    country_name=rs.getString("country_name");
    temp_category_name=category_name1;
    temp_subcategory_name=subcategory_name1;
    count++;
%>
        <tr>
            <td><%=i%></td>
            <td><%=institution_name%></td>
            <td><%=country_name%></td>                                            
        </tr>
<%
}
%>
    </tbody>
</table>

上面代码中的问题是,它多次显示组头类别和子类别,并且计数不正确。因此,请帮助我更正上述问题。

请查看以下代码:

    if ((category_name1).equals(temp_category_name) )
    {
       category_name1="";  ///HERE IS YOUR PROBLEM!!!
    }
    ....
    ....
    temp_category_name=category_name1; ///PROBLEM ABOVE MESSES THIS UP.
当类别_name1等于最后一个类别时,将其设置为空字符串,然后将下一次迭代的最后一个类别设置为类别_name1(现在为空字符串),确保如果类别出现两次以上,名称将再次打印。您可以使用if语句将其打印为空字符串,但将实际值保留在变量中,而不是将category_name1设置为空字符串

此代码还有其他问题,但这是主要问题。另外,这里的人不可避免地会告诉您不要使用Scriptlet,而是使用JSTL


至于记录计数。按照您这样做的方式,您必须在类别的末尾而不是开头显示记录计数。

谢谢您的回答。所以你的意思是我应该保留在if语句的开头!它会解决这个问题吗?还有一件事,关于计数,如何在顶部显示总数?您必须先计数,然后打印标题。目前,您先打印标题,然后计数。但我需要更多关于这两个问题的详细信息