如何将Spring Data JPA配置为仅读取架构?

时间:2019-01-09 09:58:58

标签: spring-boot spring-data-jpa spring-data

我正在使用Spring Boot编写一个Web服务,以从数据库中获取一些数据并对其执行一些操作。

该数据库是独立的,它链接到其他Web服务,所以我不希望我的Web服务干扰架构和其他数据。 我只希望我的服务连接到数据库并仅执行读取操作。

那应该是什么配置,我应该这样做,以便它不会以任何方式干扰当前数据库。

// Example Configuration :
# Connection url for the database "test"
spring.datasource.url = jdbc:mysql://localhost:3306/test?useSSL=false
# Username and password
spring.datasource.username = root
spring.datasource.password = root
# Hibernate ddl auto (create, create-drop, update): with "update" the database
# schema will be automatically updated accordingly to java entities found in the project
spring.jpa.hibernate.ddl-auto=validate

那么我应该如何更改我的配置以实现只读模式?

1 个答案:

答案 0 :(得分:0)

删除spring.jpa.hibernate.ddl-auto=validate,因为默认行为是none

https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html

  

spring.jpa.hibernate.ddl-auto =#DDL模式。这实际上是“ hibernate.hbm2ddl.auto”属性的快捷方式。使用嵌入式数据库且未检测到任何模式管理器时,默认值为“ create-drop”。否则,默认为“无”。

顺便说一句,这不会修改数据库,但是如果您的域实体与Hibernate期望的不匹配,那只会失败。