Springboot JdbcTemplate使用druid連接池

1、配置文件

  datasource:
    url: jdbc:mysql://localhost:3306/XXX?readOnlyPropagatesToServer=false&serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&&useSSL=false
    username: root
    password: root
    driver-class-name: com.mysql.jdbc.Driver

    druid:
      type: com.alibaba.druid.pool.DruidDataSource
      validation-query: SELECT 1
      pool-prepared-statements: true
      validation-query-timeout: 5000
      query-timeout: 3000
      initial-size: 5
      min-idle: 5
      max-active: 20
      max-wait: 10000
      test-while-idle: true
      test-on-return: true
      test-on-borrow: true
      # 空閒連接回收的時間間隔,與test-while-idle一起使用,設置5分鐘
      time-between-eviction-runs-millis: 300000
      # 連接池空閒連接的有效時間 ,設置30分鐘
      min-evictable-idle-time-millis: 1800000

2、自定義數據源

@Component
public class DruidProperties {
  @ConfigurationProperties(prefix = "spring.datasource")
  @Bean
  public DataSource druidDataSource() {
    return new DruidDataSource();
  }
}

3、創建JdbcTemplate連接

@Slf4j
public class MysqlService {

  /**
   * Spring Boot 默認已經配置好了數據源,可以直接 DI 注入然後使用即可
   */
  @Resource
  DataSource dataSource;

  public List<Map<String, Object>> getSqlReturn(String sql){
    //獲取jdbctemplate
    JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
    List<Map<String, Object>> query = jdbcTemplate.queryForList(sql);
    return query;
  }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章