Spring Boot не может выбрать файл schema.sql в начале запуска Spring Boot - PullRequest
0 голосов
/ 10 июля 2019

Я прошел по ссылке: https://walkingtechie.blogspot.com/2018/12/execute-schema-and-data-sql-on-startup-spring-boot.html и Spring Boot - загрузка исходных данных уже, но все еще пытается понять несколько вещей.

Я ищу, чтобы выполнитьschema.sql в начале Запуск Spring Boot run, для этого я использую конфигурацию ниже.Я хочу, чтобы все выполнялось на Postgres DB .

Я создал файл schema.sql в папке sql / schema.sql.Я ожидаю, что Spring Boot заберет этот файл и запустит его.Есть ли способ, если мы можем это сделать?Я использую Spring Boot версию 2.1.6.RELEASE и Postgres 11.0.

spring:   
  datasource:
    url: jdbc:postgresql://localhost:5432/test?currentSchema=test
    username: postgres
    password: postgres
    platform: postgres
    schema:
    - classpath:sql/schema.sql
  jpa:
    database-platform: org.hibernate.dialect.PostgreSQLDialect
    properties:
      hibernate: 
        dialect: org.hibernate.dialect.PostgreSQLDialect
        default_schema: test
        format_sql: true
        jdbc: 
          lob:
            non_contextual_creation: true

    show-sql: true

    hibernate:
      ddl-auto: none

1 Ответ

0 голосов
/ 10 июля 2019

Я смог решить эту проблему самостоятельно, используя приведенный ниже код.

User.java

@Data
@Entity
@Table(name = "users")
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long userId;

    private String name;
}

DataSqlApplication.java

@SpringBootApplication
public class DataSqlApplication {

    public static void main(String[] args) {
        SpringApplication.run(DataSqlApplication.class, args);
    }
}

application.yml

---
spring:   
  datasource:
    url: jdbc:postgresql://localhost:5432/test?currentSchema=test
    username: postgres
    password: admin
    platform: postgres
    initialization-mode: always
    schema: 
    - classpath:sql/schema.sql
    data:
    - classpath:sql/data.sql
  jpa:
    database-platform: org.hibernate.dialect.PostgreSQLDialect
    properties:
      hibernate: 
        default_schema: test
        format_sql: true
        jdbc: 
          lob:
            non_contextual_creation: true

    show-sql: true

    hibernate:
      ddl-auto: none
    generate-ddl: false
  profiles:
    active:
    - local
# Logging
logging:
  level:
    org.springframework.data: debug

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...