Конвертер для богатых: comboBox. Что если строковые представления сущностей могут содержать повторяющиеся элементы? - PullRequest
1 голос
/ 23 марта 2011

Например, у меня есть PersonEntity и я хочу использовать его в rich: comboBox.Я должен указать конвертер для этой сущности (иначе будет использоваться toString of PersonEntity).PersonConverter возвращает имя и фамилию - «Джон Смит», и может быть много людей с одинаковыми именем и фамилией, поэтому метод getAsObject преобразователя не сможет их различить и будет выбран неправильный объект.Итак, что мне делать?

1 Ответ

2 голосов
/ 23 марта 2011

Я думаю, что вы ничего не можете сделать, как только они будут строками.

Вы можете изменить свой метод getAsString, добавив в каждую строку уникальный идентификатор, например, ПК базы данных, например, [ имя, фамилия, идентификатор ] или обнаружение дубликатов, а затем добавление приращения только к дубликатам, таким как:

[Джон Доу]

[Джон Доу (2)]

[Артур Миллер]

Затем вы должны убедиться, что ваши запросы к базе данных getAsString и getAsObject дают наборы результатов в том же порядке.

...