spring-boot如何使用两个DataSource
Posted
技术标签:
【中文标题】spring-boot如何使用两个DataSource【英文标题】:How use spring-boot Two DataSources 【发布时间】:2016-04-08 03:44:15 【问题描述】:我尝试在 spring boot 中使用两个数据源,而不是像教程一样配置:http://docs.spring.io/spring-boot/docs/1.3.1.RELEASE/reference/htmlsingle/#howto-two-datasources
@Configuration
public class MigrarService
@Bean(name = "dbdnaso")
@Primary
@ConfigurationProperties(prefix="spring.dbdnaso")
public DataSource primaryDataSource()
return DataSourceBuilder.create().build();
@Bean(name = "dbregistro")
@ConfigurationProperties(prefix="spring.dbregistro")
public DataSource dbRegistro()
return DataSourceBuilder.create().build();
然后我创建 2 个实体和 2 个存储库
import br.com.lumera.entity.TbUsuario;
import org.springframework.data.repository.CrudRepository;
public interface IUsuario1 extends CrudRepository<TbUsuario1, Integer>
TbUsuario1 getTbUsuarioByNmEmail(String nmEmail);
TbUsuario1 getTbUsuarioByNmEmailAndDsSenha(String nmEmail, String string);
和
import br.com.lumera.entity.TbUsuario;
import org.springframework.data.repository.CrudRepository;
public interface IUsuario2 extends CrudRepository<TbUsuario2, Integer>
TbUsuario2 getTbUsuarioByNmEmail(String nmEmail);
TbUsuario2 getTbUsuarioByNmEmailAndDsSenha(String nmEmail, String string);
现在我该怎么说我在每个存储库中使用的数据源??
tks
【问题讨论】:
看看这个:***.com/questions/12612288/… 数据库是否具有相同的结构? 伙计,我在同一台服务器上有 2 个 postgresql,但在 diff db 中 看这个例子。它解释了你需要什么Multiple data source and schema creation in Spring Boot 【参考方案1】:如果您使用自动配置并且有两个,它将使用注释 - @Primary
【讨论】:
所以我需要在我的扩展 CrudRepository 的类中放入注释主?以上是关于spring-boot如何使用两个DataSource的主要内容,如果未能解决你的问题,请参考以下文章
在 Spring-Boot 中,我们如何在同一个项目中连接两个数据库(Mysql 数据库和 MongoDB)?
如何通过使用 JPA + Hibernate 和 Spring-boot 在一个数据库中使用多个模式?
有没有办法正确集成两个(或更多)Spring-Boot 项目?
如何在spring-boot中用application.properties制作config类?