Ответ 1
Hibernate docs (последний)
Обратите внимание, что вы можете смешать использование устаревшего hbm.xml и аннотации подход. Элемент ресурса может быть либо файлом hbm, либо EJB3 Дескриптор развертывания XML. Различие прозрачно для вашего процесса настройки.
Вы можете комбинировать аннотированные постоянные классы и классический hbm.cfg.xml объявления с тем же SessionFactory. Однако вы не можете заявить класс несколько раз (аннотированный или через hbm.xml). Вы не может смешивать стратегии конфигурации (hbm vs annotations) в объекте иерархии.
Чтобы облегчить процесс переноса из hbm файлов в аннотации, механизм конфигурации обнаруживает дублирование отображения между аннотации и hbm файлы. Затем файлы HBM распределяются по приоритетам аннотированные метаданные на основе класса к классу. Вы можете изменить с использованием свойства hibernate.mapping.precedence. По умолчанию используется
hbm, class
и сменив его наclass, hbm
, приоритет будет аннотирован классы по файлам hbm при возникновении конфликта.