返回

新手驾到,从零开始玩转 Spring Boot 多数据源配置

后端

从简单到复杂,带你领略 Spring Boot 多数据源配置的奥秘

大家好,我是 [您的名字],今天我想和大家聊一聊 Spring Boot 多数据源配置。对于那些正在开发大型项目的人来说,使用多个数据源可以为您的应用程序带来诸多好处。例如,您可以使用一个数据源来存储客户数据,而使用另一个数据源来存储订单数据。这样可以帮助您保持数据井然有序,并使应用程序更易于维护。

让我们来了解一下 Spring Boot 多数据源配置的步骤

  1. 在 application.properties 文件中配置数据源。
  2. 在 Spring Boot 应用程序中创建配置类。
  3. 使用 @EnableJpaRepositories@SpringBootApplication 注解来启用 JPA 存储库和 Spring Boot 应用程序。

配置代码

spring.datasource.default.url=jdbc:mysql://localhost:3306/db1
spring.datasource.default.username=root
spring.datasource.default.password=123456

spring.datasource.secondary.url=jdbc:mysql://localhost:3306/db2
spring.datasource.secondary.username=root
spring.datasource.secondary.password=123456

配置类

@Configuration
@EnableJpaRepositories(basePackages = "com.example.demo.repository.secondary")
public class SecondaryDataSourceConfig {

    @Bean
    public DataSource secondaryDataSource() {
        HikariDataSource dataSource = new HikariDataSource();
        dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/db2");
        dataSource.setUsername("root");
        dataSource.setPassword("123456");
        return dataSource;
    }

}

启动类

@SpringBootApplication
@EnableJpaRepositories(basePackages = "com.example.demo.repository.primary")
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

然后,您就可以在应用程序中使用多个数据源了

@Service
public class UserService {

    @Autowired
    private UserRepository primaryUserRepository;

    @Autowired
    private SecondaryUserRepository secondaryUserRepository;

    public void saveUser(User user) {
        primaryUserRepository.save(user);
    }

    public List<User> findAllUsers() {
        return secondaryUserRepository.findAll();
    }

}

希望本教程对您有所帮助。如果您有任何问题,请随时留言。