2012-05-14 4 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-кода внутри скриптлетов является плохой практикой. Вы должны избегать этого. Сделайте необходимый код Java в сервлете и используйте EL или JSTL для отображения возвращенных данных в JSP

Что касается вашего вопроса, каждый результат будет иметь TR, где идентификаторы и 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