无法在Spring Boot中连接非主数据库

时间:2019-11-18 10:20:22

标签: java spring-boot

我是Spring Boot的新手。通过教程,我已经构建了一个应用程序。但是,当我尝试连接2个mysql数据库时,我成功连接了第一个数据库,但第二个代码始终引用主数据库,并抛出该表不存在的错误。

1 个答案:

答案 0 :(得分:0)

有多种实现方法,具体取决于需求。

  • 创建两个数据源bean,同时在属性文件中定义数据库url,用户名和pwd。通过@Value读取它们并创建两个源的@bean

    @Value("${datasource.url}")
    private String url;
    
    @Value("${datasource.username}")
    private String username;
    
    @Value("${datasource.password}")
    private String password;
    
    @Bean
    @Primary
    public DataSource dataSource1() {
    
        return DataSourceBuilder.create().username(username).password(password).url(url)
                .build();
    }
    
    @Bean
    public DataSource dataSource2() {
    
        return DataSourceBuilder.create().username(username).password(password).url(url)
                .build();
    }
    
  • 如果您需要同步两个数据库操作,我建议使用 JTA