DruidDataSourceConfig.java
@Configuration
public class DruidDataSourceConfig {
@Autowired
Environment environment;
@Bean
public DataSource druidDataSource() throws Exception {
Properties properties = new Properties();
properties.put("url", environment.getProperty("spring.datasource.url"));
properties.put("username", environment.getProperty("spring.datasource.username"));
properties.put("password", environment.getProperty("spring.datasource.password"));
properties.put("driver", environment.getProperty("spring.datasource.driver-class-name"));
properties.put("type", environment.getProperty("spring.datasource.type"));
properties.put("platform", environment.getProperty("spring.datasource.platform"));
properties.put("initial-size", environment.getProperty("spring.datasource.tomcat.initial-size"));
properties.put("max-active", environment.getProperty("spring.datasource.tomcat.max-active"));
properties.put("initialPoolSize", environment.getProperty("spring.datasource.initialPoolSize"));
properties.put("minPoolSize", environment.getProperty("spring.datasource.minPoolSize"));
properties.put("maxPoolSize", environment.getProperty("spring.datasource.maxPoolSize"));
properties.put("maxStatements", environment.getProperty("spring.datasource.maxStatements"));
properties.put("maxIdleTime", environment.getProperty("spring.datasource.maxIdleTime"));
properties.put("acquireIncrement", environment.getProperty("spring.datasource.acquireIncrement"));
properties.put("acquireRetryAttempts", environment.getProperty("spring.datasource.acquireRetryAttempts"));
properties.put("acquireRetryDelay", environment.getProperty("spring.datasource.acquireRetryDelay"));
properties.put("testConnectionOnCheckin", environment.getProperty("spring.datasource.testConnectionOnCheckin"));
properties.put("idleConnectionTestPeriod", environment.getProperty("spring.datasource.idleConnectionTestPeriod"));
properties.put("checkoutTimeout", environment.getProperty("spring.datasource.checkoutTimeout"));
properties.put("filters", environment.getProperty("spring.datasource.filters"));
return DruidDataSourceFactory.createDataSource(properties);
}
}
NutzDaoConfig.java
@Configuration
@Component("qdao")
public class NutzDaoConfig extends NutDao implements Dao {
DataSource druidDataSource;
@Autowired
public void setDruidDataSource(DataSource druidDataSource) {
this.druidDataSource = druidDataSource;
setDataSource(druidDataSource);
}
}
application.preperties
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/qeustionaire?useUnicode=true&characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.platform=mysql
spring.aop.proxy-target-class=true
spring.thymeleaf.cache=false
示例:
@Resource
private Dao qdao;