Druid是一个数据库连接池,它能够提供强大的监控和管理功能。以下是一个配置Druid数据源的基本示例:
java
import com.alibaba.druid.pool.DruidDataSource;
import javax.sql.DataSource;
import java.sql.SQLException;
public class DruidDataSourceConfig {
public DataSource dataSource() throws SQLException {
DruidDataSource dataSource = new DruidDataSource();
dataSource.setDriverClassName("com.mysql.jdbc.Driver"); // 数据库驱动
dataSource.setUrl("jdbc:mysql://localhost:3306/yourdb"); // 数据库URL
dataSource.setUsername("yourusername"); // 数据库用户名
dataSource.setPassword("yourpassword"); // 数据库密码
dataSource.setInitialSize(10); // 初始连接数
dataSource.setMinIdle(10); // 最小空闲连接数
dataSource.setMaxActive(50); // 最大活跃连接数
dataSource.setMaxWait(60000); // 获取连接时的最大等待毫秒数
dataSource.setTimeBetweenEvictionRunsMillis(60000); // 间隔多久进行一次检测,检测需要关闭的空闲连接
dataSource.setMinEvictableIdleTimeMillis(300000); // 一个连接至少空闲多久后可被检测关闭
dataSource.setTestWhileIdle(true); // 是否在空闲时检测连接
dataSource.setTestOnBorrow(false); // 是否在获取连接时检测连接
dataSource.setTestOnReturn(false); // 是否在归还连接时检测连接
dataSource.setPoolPreparedStatements(false); // 是否缓存preparedStatement
dataSource.setMaxPoolPreparedStatementPerConnectionSize(20); // 每个连接最大缓存的preparedStatement数
return dataSource;
}
}
在这个例子中,我们配置了一个Druid数据源,并设置了基本的数据库连接信息,以及连接池的初始化大小、最大活跃连接数等参数。这个配置可以根据实际需求进行调整。