Какой из следующих типов коллекций вы используете в своей модели домена JPA и почему:
-
java.util.Collection -
java.util.List -
java.util.Set
Мне было интересно, существуют ли для этого некоторые основные правила.
UPDATE Я знаю разницу между Set и List. A List позволяет дублировать и имеет порядок, а Set не может содержать повторяющиеся элементы и не определяет порядок. Я задаю этот вопрос в контексте JPA. Если вы строго следуете определению, то вы всегда должны использовать тип Set, поскольку ваша коллекция хранится в реляционной базе данных, где вы не можете иметь дубликаты и где вы сами определяете заказ, то есть порядок в вы Java List не обязательно сохраняются в БД.
Например, большую часть времени я использую тип List, а не потому, что он имеет порядок или позволяет дубликаты (что я не могу сделать в любом случае), потому что некоторые из компонентов в моей библиотеке компонентов требуют список.