Apache Commons DbUtils 1.5 發布
DbUtils 剛發布的 1.5 版本改進記錄包括:
Bug
[DBUTILS-73] - .BasicRowProcessor.CaseInsensitiveHashMap uses default Locale for toLowerCase
[DBUTILS-77] - "drop view" does not work from QueryRunner.update with SQLServer JDBC drivers. Same SQL works with a PreparedStatement just fine.
[DBUTILS-93] - Source assembly artifact fails to build a site because of missing pmd-ruleset.xml
改進
[DBUTILS-66] - ScalarHandler, ColumnHandler and KeyedHandler are missing generics
[DBUTILS-84] - BeanProcessor method processColumn should take SQLXML in consideration
[DBUTILS-91] - Enhance BasicRowProcessor to have row mapping easier to configure
新特性
[DBUTILS-67] - Add a BeanMapHandler
[DBUTILS-76] - New handler StringColumnListHandler
任務
[DBUTILS-88] - Make AsyncQueryRunner be a decorator around a QueryRunner
測試
[DBUTILS-94] - Provide test coverage for org.apache.commons.dbutils.DbUtils
Common Dbutils是操作數據庫的組件,對傳統操作數據庫的類進行二次封裝,可以把結果集轉化成List。
補充一下,傳統操作數據庫的類指的是JDBC(java database connection:java數據庫連接,java的數據庫操作的基礎API。)。
特色:
1.對于數據表的讀操作,他可以把結果轉換成List,Array,Set等java集合,便于程序員操作;
2.對于數據表的寫操作,也變得很簡單(只需寫sql語句)
3.可以使用數據源,使用JNDI,數據庫連接池等技術來優化性能--重用已經構建好的數據庫連接對象,而不像php,asp那樣,費時費力的不斷重復的構建和析構這樣的對象。
DBUtils是java編程中的數據庫操作實用工具,小巧簡單實用, 給出一小段代碼看看DbUtils是怎么用的:
// Create a ResultSetHandler implementation to convert the // first row into an Object[]. ResultSetHandler<Object[]> h = new ResultSetHandler<Object[]>() { public Object[] handle(ResultSet rs) throws SQLException { if (!rs.next()) { return null; }ResultSetMetaData meta = rs.getMetaData(); int cols = meta.getColumnCount(); Object[] result = new Object[cols]; for (int i = 0; i < cols; i++) { result[i] = rs.getObject(i + 1); } return result; }
};
// Create a QueryRunner that will use connections from // the given DataSource QueryRunner run = new QueryRunner(dataSource);
// Execute the query and get the results back from the handler Object[] result = run.query( "SELECT * FROM Person WHERE name=?", h, "John Doe");
</pre>
本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!