用AI赚第一桶💰低成本搭建一套AI赚钱工具,源码可二开。 广告
# 74.1 配置数据源 自定义`DataSource`类型的`@Bean`可以覆盖默认设置,正如[Section 24.7.1, “Third-party configuration”](https://github.com/cwiki-us-spring-guides/Spring-Boot-Reference-Guide/tree/0047aa8098a650dde0c93f4d2e91754c83468c4b/IV.%20Spring%20Boot%20features/24.7.1.%20Third-party%20configuration.md)解释的那样,你可以很轻松的将它跟一系列`Environment`属性绑定: ```java @Bean @ConfigurationProperties(prefix="datasource.fancy") public DataSource dataSource() { return new FancyDataSource(); } ``` ```text datasource.fancy.jdbcUrl=jdbc:h2:mem:mydb datasource.fancy.username=sa datasource.fancy.poolSize=30 ``` Spring Boot也提供了一个工具类`DataSourceBuilder`用来创建标准的数据源。如果需要重用`DataSourceProperties`的配置,你可以从它初始化一个`DataSourceBuilder`: ```java @Bean @ConfigurationProperties(prefix="datasource.mine") public DataSource dataSource(DataSourceProperties properties) { return properties.initializeDataSourceBuilder() // additional customizations .build(); } ``` 在此场景中,你保留了通过Spring Boot暴露的标准属性,通过添加`@ConfigurationProperties`,你可以暴露在相应的命命名空间暴露其他特定实现的配置, 具体详情可参考'Spring Boot特性'章节中的[Section 29.1, “Configure a DataSource”](https://github.com/cwiki-us-spring-guides/Spring-Boot-Reference-Guide/tree/0047aa8098a650dde0c93f4d2e91754c83468c4b/IV.%20Spring%20Boot%20features/29.1.%20Configure%20a%20DataSource.md)和[DataSourceAutoConfiguration](https://github.com/spring-projects/spring-boot/tree/v1.4.1.RELEASE/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/DataSourceAutoConfiguration.java)类源码。