spring boot 配置数据源

Posted 知己一生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring boot 配置数据源相关的知识,希望对你有一定的参考价值。

以postgreSQL为例,方便下次直接使用。

其中pom.xml引入如下依赖。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.main</groupId>
    <artifactId>UserManage</artifactId>
    <version>1.0-SNAPSHOT</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.7.RELEASE</version>
    </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <version>9.0-801.jdbc4</version>
            <scope>runtime</scope>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

</project>

 在 application.properties 配置数据源

 

spring.datasource.primary.url=jdbc:postgresql://127.0.0.1:5432/hxquant
spring.datasource.primary.username=hxquant
spring.datasource.primary.password=hxquant
spring.datasource.primary.driver-class-name=org.postgresql.Driver

 

利用spring加载配置:

 

@Configuration
public class DataSourceConfig {
    @Bean(name = "primaryDataSource")
    @Qualifier("primaryDataSource")
    @ConfigurationProperties(prefix = "spring.datasource.primary")
    public DataSource primaryDataSource(){
        return DataSourceBuilder.create().build();
    }



    @Bean(name = "primaryJdbcTemplate")
    public JdbcTemplate primaryJdbcTemplate(@Qualifier("primaryDataSource")DataSource dataSource){
        return new JdbcTemplate(dataSource);
    }


}

 

最后采用 Junit测试效果:

 

@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = UserManageStart.class)
public class UserServiceTest {
    @Autowired
    @Qualifier("primaryJdbcTemplate")
    private JdbcTemplate jdbcTemplate1;


    @Test
    public void test1(){
        List<Map<String,Object>> list = jdbcTemplate1.queryForList("select * from user");

        String result = Arrays.asList(list).toString();

        System.out.println(result);
    }


}

  

 

以上是关于spring boot 配置数据源的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot部署JAR文件瘦身优化经验分享

Spring Boot 多数据源配置

一张图,理顺 Spring Boot应用在启动阶段执行代码的几种方式

一张图帮你记忆,Spring Boot 应用在启动阶段执行代码的几种方式

一张图,理顺 Spring Boot应用在启动阶段执行代码的几种方式

一张图,理顺 Spring Boot应用在启动阶段执行代码的几种方式