Release History

VersionDateDescription
1.1 2006-12-01 Last couple of years of fixes
1.0 2003-11-10 First release of DbUtils

Get the RSS feed of the last changes

Release 1.1 - 2006-12-01

TypeChangesBy
fix Tests fail to build under 1.6, and warning while compiling source Fixes DBUTILS-32. bayard
fix BeanListHandler and BeanHandler fail to support java.sql.Date() Fixes DBUTILS-1. bayard
update ResultSetRowProcessor abstract handler and some classes rework Fixes DBUTILS-16. bayard
fix Setting bean properties fa ils silently Fixes DBUTILS-3. bayard
fix MockResultSet needs to handle equals and hashCode Fixes DBUTILS-9. dgraham
fix MockResultSet: Throw UnsupportedOperationException for not implemented methods Fixes DBUTILS-7. bayard
add Implement Pluggable Adaptors to Make BeanHandler Smarter Fixes DBUTILS-20. dgraham
update Patch for extending BasicRowProcessor Fixes DBUTILS-15. dgraham
add Protected QueryRunner.close() methods Fixes DBUTILS-12. dgraham
update Updated docs for example.html page (select AS) Fixes DBUTILS-23. dgraham
add Added protected ResultSetIterator.rethrow() method to wrap SQLExceptions in RuntimeExceptions. Fixes DBUTILS-4. dgraham
update Added SQLState and error code to rethrown SQLExceptions. Fixes DBUTILS-5. dgraham
add Added KeyedHandler to create a Map of Maps from a ResultSet. Fixes DBUTILS-25. dgraham
update Use current class' ClassLoader instead of QueryLoader's ClassLoader in loadQueries(). Fixes DBUTILS-2. dgraham
update Made QueryLoader.loadQueries() protected so subclasses can use query repositories other than properties files. Fixes DBUTILS-22. dgraham
update QueryRunner now calls getDataSource() internally any time it needs access to its DataSource object to allow subclasses to provide different behavior. dgraham
add Added DbUtils.rollbackAndClose() and DbUtils.rollbackAndCloseQuietly(). dgraham
update Call ResultSet.getTimestamp() in BeanProcessor.processColumn() if the bean property is a java.sql.Timestamp. Oracle's getObject() implementation returns its own incompatible Timestamp class. Fixes DBUTILS-26. dgraham
update Changed QueryRunner.fillStatement() null handling to use Types.VARCHAR instead of Types.OTHER. This works for the following tested drivers: Firebird 1.5/firebirdsql 1.5RC3, Oracle 9/ Thin driver, MySQL 4.0/Msql Connecttor 3.0 and mm.mysql 2.0.4 MaxDB 7.5, HSQLDB 1.7.1, and MS Access/ODBC Bridge. Fixes DBUTILS-18. dgraham
add Added a protected QueryRunner.prepareConnection() method to allow subclasses to customize the Connections retrieved from the DataSource before they're used. Fixes DBUTILS-21. dgraham
add Refactored bean handling from BasicRowProcessor into new BeanProcessor class. This also fixes the common problem with Oracle NUMERIC fields not being set into bean properties. dgraham
add Added QueryRunner.batch() methods for batch updates. Fixes DBUTILS-13. dgraham
add Added new ResultSetHandler implementation, ColumnListHandler, that converts one ResultSet column into a List of Objects. Fixes DBUTILS-11. dgraham

Release 1.0 - 2003-11-10

TypeChangesBy
add This is the first release of the Commons DbUtils package. DbUtils is a small set of classes designed to make working with JDBC easier.
add QueryRunner class with ResultSetHandler interface allow you to easily query or update a database and handle the ResultSet. Several useful implementations of the ResultSetHandler interface are located in the org.apache.commons.dbutils.handlers.* package.
add ResultSet wrappers that decorate ResultSets with specialized behavior. See the classes in the org.apache.commons.dbutils.wrappers.* package for details.
add Dynamic JDBC API interface implementations via the standard java.lang.reflect.Proxy class. This allows you to implement JDBC interfaces such as ResultSet at runtime to avoid API version incompatibilities. See org.apache.commons.dbutils.ProxyFactory for details.