2012-08-11 29 views
1

我正在使用vaadin進行UI,我有一個具有@OneToMany關係的實體類,因此實體類有一個列表。所以我想在一個vaadin表中顯示這些值,任何人都可以解釋我該怎麼做?謝謝,這裏是我的課程資料Vaadin錶行

@OneToMany 
private List<Driver> driverList = new ArrayList<Driver>() 

這個字段在TempLocation類中。

所以當我從數據中查詢我得到一個城市和司機名單。在vaadin表中,我可以在單行顯示查詢結果(假設我只有一個記錄在一個數據庫中有多個驅動程序)

假設我的表有兩列「位置」和「驅動程序」,所以我想以多行顯示結果,我想要通過列表並在時間顯示一個驅動器隨着城市

目前它如何顯示在表中。

| Driver_ _ __ _ __ _ __ _ ____ |位置|(桌面)
[Driver1,Driver2,Driver3] | Kolonnanwa(行)

我想顯示此

| Driver_ _ __ _ __ _ __ _ ___ |位置|(表頭)
驅動程序1
_ __ _ __ _ __ _ __ _ _ | Kolonnawa(行1)
Driver2_ _ __ _ __ _ __ _ __ _ | Kolonnawa(第2行)
Driver3_ _ __ _ __ _ __ _ ___ | Kolonnanwa(第3行)

「_」用於顯示空間,

希望你得到了我想要的東西來表達,任何人都可以告訴我如何做到這一點? Thankxx提前

謝謝 乾杯

回答

2

如果你只想填寫表格的方式不同,我建議只是遍歷你的驅動程序的列表,併爲每個人創造一個行(假設每個司機都知道他所在的城市)

檢查這個例子:

/* Create the table with a caption. */ 
Table table = new Table("This is my Table"); 

/* Define the names and data types of columns. 
* The "default value" parameter is meaningless here. */ 
table.addContainerProperty("Driver", String.class, null); 
table.addContainerProperty("City", String.class, null); 

/* Add a few items in the table. */ 
int i = 1; 
for(Driver driver : driverslist){ 
table.addItem(new Object[] { 
driver.getName(),driver.getCity(), new Integer(i)); 
i++ 
} 

的整數中的addItem() - 方法是將ROWNUMBER。

請查閱vaadin手冊中有關使用table component的文章。