Самая большая проблема, с которой мы сталкиваемся на полурегулярной основе, заключается в том, что если вы хотите изменить свое постоянное отображение любым способом, используя только аннотации, вам нужно перекомпилировать и повторно развернуть.
Использование orm.xml дает вам некоторую степень абстракции, которая может сделать реконфигурацию более простой и достижимой при технически одинаковой кодовой базе (например, вы уверены, что строка кода не проникла в то, что вы перекомпиляция / повторное развертывание).
Вы можете использовать обе конфигурации: и - это среда, с которой я сейчас работаю - классы снабжены метаданными персистентности функционального типа (т.е. внешними ключами, объединениями и т. Д.), Которые имеют код представление уровня), а нерелевантная информация (например, имена таблиц / столбцов) хранятся в файлах конфигурации.
Мы все еще пытаемся разработать некоторую четкую эвристику вокруг, когда мы используем один механизм конфигурации поверх другого, но мы добираемся до этого.