Может ли Spring Data JPA автоматически создать базу данных в PostgreSQL? - PullRequest
0 голосов
/ 25 февраля 2019

Я использую Spring Boot, Spring Data JPA и PostgreSQL.

Желание сохранить Пользователь сущность в базе данных db_example .

@Entity
@Table(name = "my_user") // user is a reserved keyword in PostgreSQL
public class User {
    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    private Integer id;  
    private String name;    
    private String email;

    // getters and setters       
}

My application.properties вполне стандартно:

spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect

spring.jpa.hibernate.show-sql=true
spring.jpa.generate-ddl=true
spring.jpa.hibernate.ddl-auto=create

spring.datasource.url=jdbc:postgresql://localhost:5432/db_example
spring.datasource.username=springuser
spring.datasource.password=ThePassword

Можно ли создать базу данных, созданную при запуске Spring Boot Application?

В моем случае я получил org.postgresql.util.PSQLException: FATAL: database "db_example" does not exist

1 Ответ

0 голосов
/ 25 февраля 2019

Так что я настроил это вручную через приложение, вместо того, чтобы использовать application.yml свойства по умолчанию здесь , в дополнение к тем, что вам нужно просто добавить ниже.

Для получения дополнительной информации документы

jpaProps.put("javax.persistence.schema-generation.database.action", "update");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...