У меня есть приложение Springboot, в котором я пытаюсь добавить следующее в файл application.properties
spring.datasource.initialize=false
Когда я добавляю это, я вижу предупреждение, как показано ниже:
Я пытался выяснить, какое новое свойство заменяет это устаревшее свойство, но тщетно.
Может ли кто-нибудь помочь в этом!
Было бы здорово иметь ссылку на руководство по миграции.
режим инициализации не отличается от инициализации?
если вы не хотите, вы все равно можете использовать spring.datasource.initialization-mode=never
похоже, что многие другие свойства были перенесены при переходе с springboot 1.x на 2.x.
Да . мы должны проверить руководство по миграции перед миграцией.




Согласно документ
Spring Boot automatically creates the schema of an embedded DataSource. This behaviour can be customized by using the spring.datasource.initialization-mode property. For instance, if you want to always initialize the DataSource regardless of its type:
spring.datasource.initialization-mode=always
Посмотрите руководство по миграции это.
Согласно Spring Boot Migration, упомянутому в Гитхаб
Basic DataSource initialization is now only enabled for embedded data sources and will switch off as soon as you’re using a production database. The new spring.datasource.initialization-mode (replacing spring.datasource.initialize) offers more control.
spring.datasource.initialization-mode=always
В Spring Boot 2.5 режим spring.datasource.initialization-mode также устарел: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.5-Release-Notes#SQL-Script-DataSource-Initialization
вы должны использовать:
spring.sql.init.mode=always
или
spring.sql.init.mode=never
Вы можете прочитать больше на:
https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html#howto.data-initialization
Спасибо за обновления. Разве это не должно быть spring.sql.init.mode=always согласно официальной документации здесь?
@dbaltor, вы правы, кажется, они снова изменили свойство ...
spring.sql.init.enabled=true - для инициализации базы данных скриптом data.sql, расположенным в ресурсах приложения spring.sql.init.enabled=false - для
Вы можете использовать spring.jpa.defer-datasource-initialization. Обратитесь к этой документации Spring о том, как Инициализировать базу данных с помощью базовых сценариев SQL:
spring.jpa.defer-datasource-initialization=true
Используйте
spring.datasource.initialization-mode'