Сегодня мне пришлось сделать что-то совершенно новое с Hibernate в рамках модульного теста. У меня была группа сущностей, и я хотел исключить одну из них из автоматической генерации схемы).
Потратив пару часов на то, чтобы попробовать разные вещи и прочитать ответы Stackoverflow, я сорвал джекпот с помощью этого классного решения:
- внедрить поставщика фильтров схемы и интерфейсы фильтра схемы
- в реализации фильтра схемы добавьте условие if для включения таблицы, чтобы оно возвращало значение false для таблицы, которую вы не хотите создавать
- добавьте hibernate.properties в путь к классу и определите hibernate.hbm2ddl.schema_filter_provider, чтобы указать на реализацию schemafilterprovider
Ниже приведен пример реализации. В моем случае я хочу исключить все объекты, которые могли бы создать таблицу с именем namespace.
Оригинал: “https://dev.to/treaz/excluding-hibernate-entities-from-auto-generation-fg0”