嗨,我是Vaadin的新手。
我正在使用vaadin的Table属性从Domain Class加载数据,但我不知道如何为数据设置table.additem
。
我使用以下代码生成列值
Table table = new Table("Customer Table");
table.addContainerProperty("Street", String.class, null);
for(DomainClass domainClass : domainClassList) {
// table.addItem(domainClass.getStreet());
}
layout.addComponent(table);
但它显示空页。
答案 0 :(得分:1)
Vaadin的最佳做法是与容器合作。
final Table table = new Table("Customer Table");
final BeanItemContainer<DomainClass> container = new BeanItemContainer<>(
DomainClass.class, domainList);
table.setContainerDataSource(container);
如果DomainClass有一个getter getStreet()
,那么它会自动映射到具有该名称的列。您仍然可以使用table.setColumnHeader("street", "Street");
也许你发现Vaadin's docs about Containers也很有用。