Как связать поле uuid с весенним mvc и hibernate - PullRequest
0 голосов
/ 13 марта 2011

У меня есть класс сущностей, который аннотирован с помощью Hibernate и MySQL.Я хочу сгенерировать UUID и вставить его в пользовательскую таблицу.

  1. Как мне сопоставить это поле с Hibernate?

  2. Как связатьэто поле с пружинными mvc и jsp, потому что это поле будет создано автоматически и не будет в пользовательской форме?

Ответы [ 2 ]

2 голосов
/ 13 марта 2011

Прошло много времени с тех пор, как я написал любой Hibernate, но я уверен, что вы можете просто инициализировать его при создании, и идентификатор будет записан в БД при сохранении и загружен из БД при загрузке. Вы можете обнаружить, что случайный UUID менее производительный, чем стандартный первичный ключ long.

class MyEntity {

    @Id
    private String id = UUID.randomUUID().toString();
0 голосов
/ 13 марта 2011

Ну, вам не следует связывать поля в вашем объекте Form, которые пользователь фактически не заполняет в форме HTML.Просто позвольте классам DAO и backend иметь дело с заполнением любого автоматически сгенерированного идентификатора.

Что касается генерации UUID с Hibernate, вы можете использовать встроенный в генератор Hibernate uuid или один из несколькихдругие встроенные генераторы , или вы можете использовать любой тип логики генерации уникальных идентификаторов, встроенной в ваш компонент Database Engine, и просто пометить поле идентификатора <generator class="select"/>, чтобы Hibernate запрашивал базу данных после вставки строки, чтобы выяснить,сгенерированный базой данных идентификатор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...