2013-08-23 3 views
5

Qual è il modo migliore per sostituire una riga tabella in Vaadin (6 e 7)? Io uso BeanItemContainer. Il bean è un'entità e ha cambiato (non l'ID).Vaadin cambio riga tabella best practice

Penso che questa causa non necessaria chiamata di metodo e/o la creazione di oggetti:

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

risposta

3

Per quanto ne so, il migliore pratice è:

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

Quando si desidera sostituire una riga, basta sostituire i dati di questa riga in tableDataSource:

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

La differenza tra il codice e il mio è:

  • Nel codice, si sostituisce la riga (significa che la riga viene rimossa dal tavolo e poi una nuova riga verrà aggiunto alla tabella).
  • Nel mio esempio, sostituisco solo i dati della riga.

Spero che sia utile