Spring Boot: создание и удаление JPA баз данных

По умолчанию базы данных JPA создаются автоматически, только если вы используете встроенную базу данных (H2, HSQL или Derby). Вы можете явно настроить параметры JPA, используя свойства spring.jpa.*. Например, для создания и удаления таблиц вы можете добавить следующую строку в ваш application.properties:

spring.jpa.hibernate.ddl-auto=create-drop

Собственное внутреннее имя свойства Hibernate для этого - hibernate.hbm2ddl.auto. Вы можете установить его вместе с другими собственными свойствами Hibernate, используя spring.jpa.properties.* (Префикс удаляется перед добавлением их в менеджер сущностей). Следующая строка показывает пример настройки свойств JPA для Hibernate:

spring.jpa.properties.hibernate.globally_quoted_identifiers=true

Строка в предыдущем примере передает значение true для свойства hibernate.globally_quoted_identifiers диспетчеру сущности Hibernate.

По умолчанию выполнение (или проверка) DDL откладывается до запуска ApplicationContext. Существует также флаг spring.jpa.generate-ddl, но он не используется, если активна автоконфигурация Hibernate, поскольку настройки ddl-auto более детализированы.

Открытый EntityManager в представлении

Если вы запускаете веб-приложение, Spring Boot по умолчанию регистрирует OpenEntityManagerInViewInterceptor для применения шаблона «Открытый EntityManager в представлении» (Open EntityManager in View), чтобы обеспечить ленивую загрузку в веб-представлениях. Если вы не хотите, чтобы это происходило, вы должны установить для spring.jpa.open-in-view значение false в вашем application.properties.


Читайте также:


Комментарии

Популярные сообщения из этого блога

Методы класса Object в Java

Как получить текущий timestamp в Java

Основные опции JVM для повышения производительности и отладки