2013-08-23 4 views
5

Vaadin(6と7)のテーブル行を置き換える最善の方法は何ですか?私はBeanItemContainerを使用します。 Beanはエンティティであり、変更されています(IDではありません)。Vaadinテーブル行の変更のベストプラクティス

私はこの原因不要なメソッド呼び出しおよび/またはオブジェクトの作成を考える:

table.removeItem(item); 
table.addItem(item); 

答えて

3

私が知っているように、最高のpraticeは次のとおりです。

BeanItemContainer<DataModel> tableDataSource = new BeanItemContainer<>(DataModel.class); 
table.setContainerDataSource(tableDataSource); 

あなたが行を置換したい場合は、単に置き換えますtableDataSourceでこの行のデータ:

tableDataSource.removeItem(item); 
tableDataSource.addItem(item); 

あなたのコードと私の間の差である:あなたのコードで

  • 、あなたがを置き換える(これは行がテーブルから削除され、その後、新しい行がテーブルに追加されることを意味します)。
  • 私の例では、行ののデータを置き換えます。

希望します。

関連する問題