【发布时间】:2020-07-25 00:08:53
【问题描述】:
我有一个包含 2 个数据源的项目。一个用于 PostgreSQL,另一个用于 ClickHouse。目前没问题。
我打算仅通过 JDBC 将 ClickHouse 与本机 SQL 一起使用。
但我想将基于 JPA 的存储库与 PostgreSQL 数据源一起使用。如果我添加 spring-boot-starter-data-jpa 依赖项, 启动。 ClickHouse 不是一个事务性关系数据库,它的 JDBC 实现非常有限和基本,从不打算与 Hibernate 一起使用。 所以我的问题是:是否可以将 HibernateJpaAutoConfiguration 会为 ALL 注册的 DataSource beansDataSourceAutoConfiguration 用于两个数据源,但以某种方式告诉 HibernateJpaAutoConfiguration 仅使用 PostgreSQL 数据源进行配置?
我仍然想使用自动配置好东西,例如带有连接池的 DataSource 配置,而在属性文件中几乎只有几行。我知道我可以完全排除 HibernateJpaAutoConfiguration 并自行配置所有内容(entityManager、transactionManager、...),但如果可能的话,我想避免这种情况。只是告诉它避免配置 ClickHouse 数据源似乎更优雅。
更新
我的一些假设是不正确的。阅读接受的答案。很有见地。
【问题讨论】:
标签: spring-boot spring-data-jpa spring-boot-jpa