对于不同的城市和角色ADMIN的用户,将有2个具有相同数据的数据库,可以访问这两个城市。我搜索了一下,得到了一些信息,如
#first db
spring.datasource.url = [url]
spring.datasource.username = [username]
spring.datasource.password = [password]
spring.datasource.driverClassName = org.postgresql.Driver
#second db ...
spring.secondDatasource.url = [url]
spring.secondDatasource.username = [username]
spring.secondDatasource.password = [password]
spring.secondDatasource.driverClassName = org.postgresql.Driver
但是我找不到普通用户的信息。有人能帮我一下吗?
所以,您有两个不同的DB,因为您应该创建两个具有不同属性前缀的DataSource
bean。
@Bean
@ConfigurationProperties(prefix = "spring.datasource1")
public DataSource primaryDataSource() {
return DataSourceBuilder.create().build();
}
@Bean
@ConfigurationProperties(prefix = "spring.datasource2")
public DataSource secondaryDataSource() {
return DataSourceBuilder.create().build();
}
和application.yaml
中dataSources
的不同设置:
spring:
application:
name: name
datasource1:
platform: postgresql
driver-class-name: org.postgresql.Driver
url: url1
username: admin
password: secret
name:
hikari:
spring:
application:
name: name
datasource2:
platform: postgresql
driver-class-name: org.postgresql.Driver
url: url2
username: admin
password: secret
name:
hikari:
之后,您将有两个beanprimaryDataSource
和secondaryDataSource
,用于访问第一个或第二个DB。