美文网首页
springboot配置单数据源

springboot配置单数据源

作者: 秋林格瓦斯 | 来源:发表于2019-06-23 22:30 被阅读0次
    1. 选择使用H2, jdbc-api

    2.在使用SpringBoot构建项目时,我们通常有一些预先数据的加载。那么SpringBoot提供了一个简单的方式来实现CommandLineRunner。CommandLineRunner是一个接口,我们需要时,只需实现该接口就行。如果存在多个加载的数据,我们也可以使用@Order注解来排序。

    启动类如下:

    package lgp.spring.data.datasourcedemo;
    
    import lombok.extern.slf4j.Slf4j;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.CommandLineRunner;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    import javax.sql.DataSource;
    import java.sql.Connection;
    import java.sql.SQLException;
    
    @SpringBootApplication
    @Slf4j
    public class DatasourceDemoApplication implements CommandLineRunner{
    
        @Autowired
        private DataSource dataSource;
    
        public static void main(String[] args) {
            SpringApplication.run(DatasourceDemoApplication.class, args);
        }
    
        @Override
        public void run(String... args) throws Exception {
            showConnection();
        }
    
        private void showConnection() throws SQLException {
            log.info("dataSource:[{}]",dataSource.toString());
            Connection connection = dataSource.getConnection();
            log.info("connection:[{}]",connection.toString());
            connection.close();
    
        }
    }
    
    

    使用h2内存数据库, 项目启动后打印结果如下:

    2019-06-23 21:50:04.797  INFO 15416 --- [           main] l.s.d.d.DatasourceDemoApplication        : dataSource:[HikariDataSource (null)]
    
    2019-06-23 21:50:05.100  INFO 15416 --- [           main] l.s.d.d.DatasourceDemoApplication        : connection:[HikariProxyConnection@1715602761 wrapping conn0: url=jdbc:h2:mem:testdb user=SA]
    

    actuator只暴露了health和info端点,访问其他端点需要额外配置.
    在application.properties 中配置:

    management.endpoints.web.exposure.include=*
    

    访问http://localhost:8080/actuator/beans
    可以查看所有的bean, 可以看到springboot对数据源dataSource, 操作相关jdbcTemplate,事务相关 transactionTemplate, platformTransaction 进行了自动配置.

    相关文章

      网友评论

          本文标题:springboot配置单数据源

          本文链接:https://www.haomeiwen.com/subject/apgwqctx.html