Я работал над своим проектом загрузочного приложения Spring и заметил, что иногда возникает ошибка тайм-аута подключения к моей базе данных на другом сервере (SQL Server). Это происходит особенно, когда я пытаюсь выполнить миграцию скрипта, FlyWayно после нескольких попыток он работает.
Затем я заметил, что не указал spring.jpa.hibernate.ddl-autoв своем файле свойств. Я провел небольшое исследование и обнаружил, что его рекомендуется добавлять
spring.jpa.hibernate.ddl-auto= create-dropв разработке. И измените его на: spring.jpa.hibernate.ddl-auto= nonein production.
Но на самом деле я не понимал, как это работает и как спящий режим генерирует схему базы данных с использованием create-dropили noneзначения. Не могли бы вы объяснить технически, как это действительно работает, и каковы рекомендации по использованию этого свойства в разработке и на рабочем сервере. Спасибо
noneно вы можете захотеть, чтобы ваши таблицы Hibernate Search и Envers создавались с использованием, updateпоскольку они внутренне управляются этими проектами, и вы не хотите управлять ими вручную. Сейчас мы контролируем это глобально для всех таблиц, независимо от их происхождения / источника. Это будет еще одной причиной для использования параметров, зависящих от производителя, если вы хотите это использовать.