从 Spring 示例使用 REST 访问 MongoDB 数据 ( https://spring.io/guides/gs/accessing-mongodb-data-rest/ ) 开始,我想集成一个 PostgreSQL 数据源并将其链接到 MongoDB 存储库。
通过从MongoRepository
到 JpaRepository
并相应地更改 application.properties 文件我已经能够从 MongoDB 传递到 PostgreSQL,反之亦然,但基本上一次只有一个事件数据源。
使用 MongoDB 时的 application.properties
spring.data.mongodb.port=27017
spring.data.mongodb.uri=mongodb://localhost/
spring.data.mongodb.database=myMongoDB_DB
spring.data.mongodb.repositories.enabled=true
使用 PostgreSQL 时的 application.properties
spring.datasource.driverClassName=org.postgresql.Driver
spring.datasource.url=jdbc:postgresql://localhost:5432/myPostgreSQL_DB
spring.datasource.username=me
spring.datasource.password=mySuperSecretPassword
spring.jpa.database-platform=org.hibernate.dialect.PostgreSQLDialect
spring.jpa.generate-ddl=true
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=create
有没有办法配置 Spring(使用Annotation-only 方式)将两个数据源链接到同一个存储库,这样当我通过 HTTP 访问我的 REST Web 服务时,MongoDB 和 PostgreSQL 都是以完全相同的方式更改?
我用谷歌搜索并找到了一些关于 Spring 跨商店支持 (http://docs.spring.io/spring-data/mongodb/docs/1.5.5.RELEASE/reference/html/mongo.cross.store.html) 的信息,但它使用 xml 进行应用程序配置和 AspectJ,是否有更简单的方法来完成这个?
最佳答案
关于Spring JPA PostgreSQL + MongoDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30942300/