Я использую аннотации для сопоставления базовой коллекции строк с существующей сущностью, подобной этой. Внутри класса родительской сущности:добавление автоматической сгенерированной даты/метки времени в сопоставленную коллекцию строк (аннотации спящего режима)
@org.hibernate.annotations.CollectionOfElements
@JoinTable (name="GoalToAchieve_entry", [email protected](name="goalToAchieve_id"))
@org.hibernate.annotations.Sort(type = org.hibernate.annotations.SortType.NATURAL)
private SortedSet<String> entries = new TreeSet<String>();
Это прекрасно работает. У меня есть таблица с двумя столбцами (цельToAchieve_id и элемент), полученная в результате соединения. Поэтому мне было интересно, как я могу добавить штамп даты/времени (автоматически генерируемый MySQL) для каждой строки коллекции. Чтобы я мог отображать третий столбец с отметкой времени каждый раз, когда в коллекцию добавляется новая строка? Цель состоит в том, чтобы использовать набор простых объектов (Строки) и не создавать целый новый объект (с полем времени/даты).
Есть ли рекомендуемый способ сделать это? Я считаю, что даже если я предоставил поле timestamp в интерфейсе jsp, который обрабатывает добавление новых строк в коллекцию, это все равно будет проблемой спящего режима, так как мне нужна временная метка для сохранения в db.
Заранее благодарим за любую помощь.
сердечного привет
Спасибо! Я думал больше о том, как использовать @Temporal. Считаете ли вы, что в этом случае можно было бы создать новую временную метку с каждой новой вставкой значения String? – denchr
Да, это должно сработать, я думаю. Я никогда не использовал сам @Temporal, и его поведение не выглядит хорошо документированным, но оно выглядит удобно. – skaffman