Прежде всего, List не реализует Serializable
, но ArrayList, конечно, делает так же, как и большинство реализаций коллекций.Но хранение огромного списка, вероятно, не лучший способ сделать это с точки зрения чистой объектной модели.
Так почему же вы не хотите иметь таблицу всех тегов?Это лучший способ с точки зрения чистой модели.Это потребует 2-го запроса, если они вам нужны каждый раз.Именно так hibernate будет хранить список или массив тегов.
После прочтения вашего комментария @creen, я все же думаю, что вы do хотите получить таблицу тегов.В этом случае ваш класс модели будет иметь:
@ForeignCollectionField
Collection<Tag> tags;
Таблица tags
будет , а не иметь единственный тег с именем "red"
с несколькими ссылками на классы моделей, но несколькими записями "red"
,Это будет выглядеть так:
model_id name
1 "red"
1 "blue"
2 "red"
3 "blue"
3 "black"
Каждый раз, когда вы удаляете объект модели, вы сначала делаете tags.clear();
, который удаляет все теги, связанные с этой моделью, из таблицы тегов.Вам не нужно было бы делать дополнительную очистку или что-либо еще.