我想在我的spring启动项目中使用DLL脚本初始化我的数据源(当然只在开发期间)。正如文档here中所提到的,我将spring.datasource.schema
属性设置为src/main/resources/postgresql/define-schema.sql
中的DLL脚本。
spring:
profiles: dev
datasource:
platform: postgresql
driver-class-name: org.postgresql.Driver
url: jdbc:postgresql://localhost:5432/postgres
username: postgres
password: ****
initialize: true
schema: ./postgresql/define-schema.sql
continue-on-error: false
jpa:
hibernate:
ddl-auto: validate
generate-ddl: false
show-sql: true
但是脚本不会被执行。我也尝试将它放在类路径根目录并将其命名为schema.sql ...没有任何反应。
选择dev
个人资料,至少我在日志中看到它:The following profiles are active: dev
应用程序比JPA模式验证失败。
我从休眠中获得的唯一警告:
Found use of deprecated [org.hibernate.id.SequenceGenerator] sequence-based id generator; use org.hibernate.id.enhanced.SequenceStyleGenerator instead. See Hibernate Domain Model Mapping Guide for details.
但我不认为这与初始化问题有任何关系。
我的依赖项中有spring-boot-security-starter但尚未配置,可能是问题源吗?
有人认识到一个重大的错字,还有其他错误吗?
期待您的回音!
放大器
答案 0 :(得分:0)
使用classpath
示例:
spring.datasource.schema=classpath:/postgresql/define-schema.sql