Spring学习- 09 Druid数据源换成Hikari数据源(注解)

Spring学习- 09 Druid数据源换成Hikari数据源(注解)

注意: 在**07 Spring+SpringMVC+Druid+jdbcTemplate(注解方式)**的基础上修改

09.01 导入Hikari依赖()pom.xml)

导入HikariCP依赖

<dependency>
  <groupId>com.zaxxergroupId>
  <artifactId>HikariCPartifactId>
dependency>

删除druid依赖

<dependency>
    <groupId>com.alibabagroupId>
    <artifactId>druidartifactId>
dependency>

09.02 配置DataSource

  • 删除Druid的配置文件
    • DruidDatasourceConfig.java
    • DruidStatFilter.java
    • DruidStatViewServlet.java
  • 增加Hikari的配置文件(DatasourceConfig,java)
    • 创建Datasource
    • 创建JdbcTemplate
package com.min.spring.config.hikari;

import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import org.springframework.jdbc.core.JdbcTemplate;

import javax.sql.DataSource;

@Configuration  //表示配置文件类
@PropertySource(value = {"classpath:jdbc.properties",},ignoreResourceNotFound=true)  //添加配置文件
public class DatasourceConfig {
    @Value("${jdbc.driverClass}")
    private String jdbc_driverClassName ;

    @Value("${jdbc.url}")
    private String jdbc_url ;
    @Value("${jdbc.username}")
    private String jdbc_username ;
    @Value("${jdbc.password}")
    private String jdbc_password ;
    @Value("${jdbc.pool.init}")
    private Integer jdbc_initialSize ;
    @Value("${jdbc.pool.minIdle}")
    private Integer jdbc_minIdle ;
    @Value("${jdbc.pool.maxWait}")
    private Integer jdbc_maxWait ;
    @Value("${jdbc.pool.maxActive}")
    private Integer jdbc_maxActive ;
    @Autowired
    private DataSource dataSource;
    @Bean
    public DataSource dataSource(){

        HikariConfig jdbcConfig = new HikariConfig();
        jdbcConfig.setPoolName(getClass().getName());
        jdbcConfig.setDriverClassName(jdbc_driverClassName);
        jdbcConfig.setJdbcUrl(jdbc_url);
        jdbcConfig.setUsername(jdbc_username);
        jdbcConfig.setPassword(jdbc_password);
        jdbcConfig.setMaximumPoolSize(jdbc_initialSize);
//        jdbcConfig.setMaxLifetime(maxLifetime);
//        jdbcConfig.setConnectionTimeout(connectionTimeout);
//        jdbcConfig.setIdleTimeout(idleTimeout);

        return new HikariDataSource(jdbcConfig);
    }
    @Bean
    public JdbcTemplate jdbcTemplate(){
        return new JdbcTemplate(dataSource);
    }
}


你可能感兴趣的:(spring)