2015-06-07 150 views
1

我已經創建了列表,它從數據庫獲取Obiekt,我以選擇的形式顯示此列表。 這裏是表單代碼:如何在表格中顯示來自不同表格的列

<select name="obiekt"> 
     <option selected value="default">Wybierz Obiekt</option> 
     <% 
      for (Obiekt obiekt : list) { 
     %> 
     <option value="<%=obiekt.idObiekt %>"><%=obiekt.nazwa%> <%=obiekt.adres %></option> 
     <% 
      } 
     %> 
</select> 

在我的數據庫,我也TERMIN數據庫,其中有以下幾列:
idTermin INT,
dzien日期,
odKtorej VARCHAR,
doKtorej VARCHAR,
idObiekt int < - 這是參考Obiekt表的外鍵

Obiekt表:
idObiekt INT,
由... VARCHAR,
ADRES VARCHAR

我想讓它顯示TERMIN(列表)的名單表,但我沒有任何想法如何顯示Obiekt的名字並在此表上填寫地址。


這裏是MySQL代碼:

SELECT CONCAT(obiekty.nazwa, obiekty.adres) AS Obiekt, dzien, odKtorej, doKtorej FROM termin INNER JOIN obiekty ON termin.idObiekt = obiekty.idObiekt; 

這裏是表格形式代碼:

<table> 
    <%for (Termin termin : lista) {%> 
    <tr> 
    <td>THERE IS THE PLACE WHERE I WANT TO SHOW Obiekt.nazwa and Obiekt.adres</td> 
    <td><%=termin.dzien %> </td> 
    <td><%=termin.odKtorej %> </td> 
    <td><%=termin.doKtorej %> </td> 
    </tr> 
    <% } %> 
</table> 

這裏是類的一部分,在那裏我做清單:

while(rs.next()) 
     { 
      Termin termin = new Termin(); 
      termin.setNazwaObiektu(rs.getString("obiekty.nazwa")); 
      termin.setAdresObiektu(rs.getString("obiekty.adres")); 
      termin.setDzien(rs.getDate("dzien")); 
      termin.setOdKtorej(rs.getString("odKtorej")); 
      termin.setDoKtorej(rs.getString("doKtorej")); 
      terminy.add(termin); 
     } 
     return terminy; 

有什麼想法?

回答

1

使用mysql代碼爲

SELECT obiekty.nazwa, obiekty.adres, dzien, odKtorej, doKtorej FROM termin INNER JOIN obiekty ON termin.idObiekt = obiekty.idObiekt; 

它匹配控制器中的getString()。

0

模式應該是:
idTermin INT,
dzien日期,
odKtorej VARCHAR,
doKtorej VARCHAR,
obiekt Obiekt

所以你可以使用termin.obiekt.nazwatermin.obiekt.adres

+0

它不能解決問題。 – abecadlo

相關問題