аннотации к жидкой фазе и спячке - PullRequest
2 голосов
/ 26 января 2011

Этот вопрос основан на двух темах, которые были опубликованы ранее.

Спящий режим с использованием JPA (аннотированные сущности) и ликвазы

Liquibase diffChangeLog против определения отображения Hibernate

моя путаница в том, что если я использую аннотации в спящем режиме, нужно ли мне писать наборы изменений в журнале изменений.

также, так много людей сейчас используют аннотации в спящем режиме, я надеюсь, что кто-нибудь может дать мне пример необходимых вещей, чтобы это действительно заработало. нет хорошего примера в интернете.

1 Ответ

4 голосов
/ 26 января 2011

Поддержка JPA / аннотаций различий в гибернации в жидкой основе не была чрезмерно протестирована и не охватывает все случаи и аннотации, поэтому, учитывая текущее состояние, она, вероятно, не готова полагаться как часть нормального рабочего процесса. *

При этом, даже если / когда он полностью протестирован, может иметь смысл написать наборы изменений вручную. Поддержка hibernate делает различие между вашей текущей базой данных и базой данных hibernate ожидает и выводит наборы изменений для перемещения из текущей базы данных в базу данных hibernate. Хотя это часто работает, существуют проблемы с любым процессом на основе базы данных (см. http://blog.liquibase.org/2007/06/the-problem-with-database-diffs.html). Лично, так как лучше проверить и, возможно, изменить наборы изменений, добавленные в Hibernate diff, прежде чем выполнять их, я чувствую добавить их так же просто, как и я. Таким образом, я могу воспользоваться изменениями более высокого уровня (например, вводить таблицу), которые делают changeLog более читабельным.

Определенно, существуют среды и рабочие процессы, в которых генерация наборов изменений хороша, поэтому она будет поддерживаться, но ее пока нет, и вы наверняка можете использовать liquibase с hibernate без нее.

...