Druidデータベース接続プールを使用してデータベースを接続する方法と使用方法

3013 ワード

Druidは監視のために生まれたデータベース接続プールで、アリババのオープンソースプラットフォームのプロジェクトです.DruidはJava言語の中で最も良いデータベース接続プールであり、Druidは強力な監視と拡張機能を提供することができる.DBCPとC 3 P 0接続プールを置き換えることができます.Druidは、効率的で機能的で拡張性の高いデータベース接続プールを提供します.
手順:
1.druidの関連jarパッケージをインポートする2.プロファイルファイル形式の定義とロード:名前.properties(任意のディレクトリの下に置くことができます)、フォーマットは以下の通りです.
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql:///information        //   informatiom       
username=root		//            
password=root
initialSize=5
maxActive=10
maxWait=3000	

3.データベース接続プールオブジェクトの取得:工場からDruidDataSourceFactory 4を取得する.接続の取得:getConnection
**  **
 //      
	        Properties pro = new Properties();
	        InputStream is = DruidDemo.class.getClassLoader().getResourceAsStream("druid.properties");
	        pro.load(is);
	        //       
	        DataSource ds = DruidDataSourceFactory.createDataSource(pro);
	        /.    
	        Connection conn = ds.getConnection();

上記の手順では、ツールクラスJDBCUtilを作成することができます.JAvaで簡単に実現
/*
	1.            
	2.        
	3.              
	4.            
	5.          
 */
public class JDBCUtils {
	// 1.	           
	private static DataSource ds;

	// 2.        
	static {
		//           
		InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream("druid.properties");
		Properties pp = new Properties();
		try {
			pp.load(is);
			//      ,          
			ds = DruidDataSourceFactory.createDataSource(pp);
		} catch (IOException e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	// 3.              
	public static DataSource getDataSource() {
		return ds;
	}

	// 4.            
	public static Connection getConnection() throws SQLException {
		return ds.getConnection();
	}

	// 5.         
	public static void close(Connection conn, Statement stmt, ResultSet rs) {
		if (rs != null) {
			try {
				rs.close();
			} catch (SQLException e) {}
		}

		if (stmt != null) {
			try {
				stmt.close();
			} catch (SQLException e) {}
		}

		if (conn != null) {
			try {
				conn.close();
			} catch (SQLException e) {}
		}
	}

	// 6.      
	public static void close(Connection conn, Statement stmt) {
		close(conn, stmt, null);
	}
}

これにより、druidをデータベースに接続する操作が実現され、次の使用は非常に簡単であり、Springフレームワークで提供されるJDBCtemplateオブジェクトを用いてJDBCの開発を簡略化することで操作が行われる.
JdbcTemplateを最初に初期化するだけで、対応する方法を適用してデータベースの削除変更のいくつかの操作を実現できます.
private JdbcTemplate template = new JdbcTemplate(JDBCUtils.getDataSource());

JdbcTemplateメソッドを呼び出して、CRUDの操作*update()を完了します.DML文を実行します.文を追加、削除、変更*queryForMap():クエリー結果は結果セットをmapセットにカプセル化し、列名をkey、値をvalueとしてこのレコードをmapセットにカプセル化*注意:このメソッドクエリーの結果セット長は1*queryForList()のみ:クエリー結果セットをlistセットにカプセル化*注意:各レコードを1つのMapセットにカプセル化さらにMapコレクションをListコレクションにマウントする*query():結果をクエリーし、結果をJavaBeanオブジェクト*queryのパラメータにカプセル化する:RowMapper*一般的にBeanPropertyRowMapper実装クラスを使用します.JavaBeanへのデータの自動カプセル化*new BeanPropertyRowMapper(タイプ.class)*queryForObject:結果をクエリーし、結果をオブジェクトにカプセル化*一般的に集約関数に使用されるクエリー