ОК, это следующий вопрос к this one, так как я действительно запутался.ловушки коллекций сущностей в Hibernate
Предположим, у меня есть один-ко-многим или многие-ко-многим ассоциации между объектами Person
и Event
такой, что Person
класс в Java содержит Set<Event>
. (Давайте проигнорируем, содержит ли событие один Person
или Set<Person>
.)
Event
s - это объекты, хранящиеся в базе данных, поэтому я могу изменить поля событий. Каков правильный способ обработки Event
изменчивости и не получить набор Java <> проверка подлинности путается? Вы не должны переопределять hashCode()
и/или equals()
в этом случае? (например, идентификация = на основе идентификатора ссылки на объект)
Если я хочу, чтобы заказываемые Event
s (например, по времени начала события), как мне управлять изменением полей Event
? База данных прекрасно справится с этим, как только изменение будет распространено там, но на стороне Java это означает, что для изменения события в коллекции мне нужно удалить его, изменить его и повторно вставить? Или нет реального способа сохранить отсортированный порядок на Java-стороне сопоставления Hibernate? (И, следовательно, я должен относиться к нему как неупорядоченные и поэтому обрабатывать сортировку в Java, когда я хочу, чтобы получить отсортированный список Event
с?)
редактировать: Тьфу, я только что нашел эти дискуссии на равных/хэш-код: