LIST ou SET ?

Dans le cas d’utilisation avec Hibernate et particulierement pour les associations de type @ManyToMany et @OneToMany, le choix dépend du contexte d’utilisation de l’application.
1 – Privillégier le Set pour Hibernate version ancienne antérieure à 5.08

2- Si on veut privilégier l’unicité des données et si fait souvent des suppressions, utiliser plûtot un Set

Remarques:
Avec le Set, on peut aussi se débrouiller pour un tri soit en mémoire ou soit en BDD avec les annotations comme @ORDERBY, @SORTCOMPARATOR sur un SORTEDSET
De plus, penser à bien redéfinir les méthodes hasCode() & equals(Object o)
=> hascode-equals

3 – Sinon utiliser List si l’ordre et le tri sont plus utiles pour votre application

Ces choix sont importants pour des raisons de performance de l’application utilisant Hibernate