Рубрики
Без рубрики

Исключение объектов гибернации из автоматической генерации

Сегодня мне пришлось сделать что-то совершенно новое с Hibernate в рамках модульного теста. У меня была буква “г”… Помеченный как java, гибернация, советы.

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

Потратив пару часов на то, чтобы попробовать разные вещи и прочитать ответы Stackoverflow, я сорвал джекпот с помощью этого классного решения:

  • внедрить поставщика фильтров схемы и интерфейсы фильтра схемы
  • в реализации фильтра схемы добавьте условие if для включения таблицы, чтобы оно возвращало значение false для таблицы, которую вы не хотите создавать
  • добавьте hibernate.properties в путь к классу и определите hibernate.hbm2ddl.schema_filter_provider, чтобы указать на реализацию schemafilterprovider

Ниже приведен пример реализации. В моем случае я хочу исключить все объекты, которые могли бы создать таблицу с именем namespace.

Ссылка: https://stackoverflow.com/questions/6212144/how-to-disable-schema-validation-in-hibernate-for-certain-entities

Оригинал: “https://dev.to/treaz/excluding-hibernate-entities-from-auto-generation-fg0”