Druid(德魯伊)連接數據庫:
連接mysql必導包【mysql-connector-java-5.1.47.jar】
這里提供了連接mysql相關jar包的所有版本: https://mvnrepository.com/artifact/mysql/mysql-connector-java
使用druid連接數據庫,首先需要導入相關jar包【例:druid-1.1.20.jar,log4j-1.2.17.jar,log4j-api-2.11.2.jar,log4j-core-2.11.2.jar】
這里提供相關jar包下載網站: https://mvnrepository.com/
**連接配置文件 **
# 驅動加載
driverClassName=com.mysql.jdbc.Driver
# 注冊驅動
url=jdbc:mysql://127.0.0.1:3306/database_name?useUnicode=true&characterEncoding=utf8&useSSL=true
# 用戶名
username=root
# 密碼
password=root
# 初始化連接數
initialSize=10
# 最大連接數量
maxActive=10
# 最大空閑連接,已過時
# maxIdle = 10
# 最小空閑連接
minIdle=10
# 屬性類型的字符串,通過別名的方式配置擴展插件, 監控統計用的stat 日志用log4j 防御sql注入:wall
filters=stat,log4j,wall
連接工具類
package com.demo.util;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;
import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.pool.DruidDataSourceFactory;
/**
* druid連接工具類
*/
public class JDBCUtil {
static DruidDataSource dataSource;
static {
Properties prop = new Properties();
try {
prop.load(JDBCUtil.class.getClassLoader().getResourceAsStream("druid.properties"));
dataSource = (DruidDataSource)DruidDataSourceFactory.createDataSource(prop);
//dataSource.addFilters("stat,log4j,wall");
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 獲取連接
* @return
*/
public static Connection getConn() {
Connection connection = null;
try {
connection = dataSource.getConnection();
} catch (SQLException e) {
e.printStackTrace();
}
return connection;
}
/**
* 釋放資源
* @param conn
* @param prep
*/
public static void close(Connection conn,PreparedStatement prep) {
try {
if(prep != null) {
prep.close();
}
if(conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void close(Connection conn,PreparedStatement prep,ResultSet rs) {
try {
if(rs != null) {
rs.close();
}
close(conn,prep);
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
System.out.println(getConn());
}
}