2012-05-14 168 views
1

我正在尝试以下jsp代码。以jsp表格格式显示数据

switch(ch)    
    { 
    case 1 : 
     ResultSet rsid=stmt.executeQuery("select ID from BcTwo"); 
     while(rsid.next()) 
     { 
     %> 
      <tr><td> 
       <%out.println(rsid.getString(1)); %> 
      </td></tr> 
      <% 
     } 
     rsid.close(); 
     break; 
    case 2 : 
     ResultSet rs=stmt.executeQuery("select SERIES from BcTwo"); 
     while(rs.next()) 
     { 
     %> 
      <tr><td> 
      <%out.println(rs.getString("SERIES")); %> 
      </td></tr> 
      <% 
     } 
     rs.close(); 
     break; 
    } 

使用此代码我能够打印data.But我想在下面的格式打印的数据:

ID Series 
1 BE 
2 EQ 
3 BE 
4 BE 
5 EQ 
6 EQ 

,并且使用上述代码数据得到打印为:

ID 
1 
2 
3 
4 
5 
6 
Series 
BE 
EQ 
BE 
BE 
EQ 
EQ 

我应该做些什么改变才能获得所需的输出?

回答

1

我得到了答案。

switch(ch)    
{ 
    case 1 : 
     String ID=(String)session.getAttribute("ID"); 
      session.setAttribute("ID", ID); 
      if(null == session.getAttribute("ID")) 
      { 
      out.println(rsid.getString("ID")); 
      } 
      break; 
    case 2 : 
     String SERIES=(String)session.getAttribute("SERIES"); 
     session.setAttribute("SERIES", SERIES); 
     if(null == session.getAttribute("SERIES")) 
     { 
     out.println(rsid.getString("SERIES")); 
     } 
     break; 
} 

我不确定这是不是最好的解决方案,但它只是为我工作。

1
switch(ch)    
    { 
%> 
<tr> 
<% 
    case 1 : 
     ResultSet rsid=stmt.executeQuery("select ID from BcTwo"); 
      while(rsid.next()) 
     { 
     %> 
      <td> 
       <%out.print(rsid.getString(1)); %> 
      </td> 
       <%  
      } 
      rsid.close(); 
     break; 
    case 2 : 
     ResultSet rs=stmt.executeQuery("select SERIES from BcTwo"); 
      while(rs.next()) 
     { 
     %> 
      <td> 
      <%out.print(rs.getString("SERIES")); %> 
      </td> 
      <% 
      } 
      rs.close(); 
     break; 
    } 
    %> 
    </tr> 
+0

它仍然以相同的格式打印。 – user1358548

+0

立即尝试我的代码 – Satya

+0

使用此代码,数据水平打印。 – user1358548

0

首先,在脚本中使用java代码是一种不好的做法。你应该避免它。在servlet中执行必要的java代码,并使用EL或JSTL在JSP中显示返回的数据,对于您的问题,每个结果将具有TR,其中ID和SERIES将打印在该TR内的2个TD中

<% 
     ResultSet rsid=stmt.executeQuery("select ID,SERIES from BcTwo"); 
     while(rsid.next()) 
     { 
    %> 
    <tr> 
     <td> 
      <%out.print(rsid.getString("ID")); %> 
     </td> 
     <td> 
      <%out.print(rsid.getString("SERIES")); %> 
     </td> 
    </tr> 
    <%  
     } 
     rsid.close(); 
    %> 

希望这有助于..

+0

:上面的代码正在工作。但我必须在开关盒中编写代码。由于ID,SERIES是用户使用复选框选择的字段。 – user1358548

+0

比将这些用户参数传递给控制器​​并执行基于jdbc查询的单个参数以获取结果并使用这些数据填充jsp .. – Sanath