| <?xml version="1.0"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <!-- |
| This file is used by the maven-changes-plugin to generate the release notes. |
| Useful ways of finding items to add to this file are: |
| |
| 1. Add items when you fix a bug or add a feature (this makes the |
| release process easy :-). |
| |
| 2. Do a bugzilla search for tickets closed since the previous release. |
| |
| 3. Use the report generated by the maven-changelog-plugin to see all |
| CVS commits. Set the project.properties' maven.changelog.range |
| property to the number of days since the last release. |
| |
| |
| The <action> type attribute can be add,update,fix,remove. |
| --> |
| |
| <document> |
| <properties> |
| <title>Release Notes</title> |
| </properties> |
| <body> |
| <release version="1.3" date="2009-11-04" description="Adds Java5 generics and varargs"> |
| <action dev="dfabulich" type="update" issue="DBUTILS-57"> |
| BeanProcessor#mapColumnsToProperties now prefers to use column labels over column names (where aliases are not set, these should be identical) |
| </action> |
| <action dev="dfabulich" type="update" issue="DBUTILS-58"> |
| Setting pmdKnownBroken in QueryRunner constructor now completely ignores ParameterMetaData |
| </action> |
| <action dev="dfabulich" type="fix" issue="DBUTILS-60"> |
| Fixed error message in QueryRunner#rethrow |
| </action> |
| </release> |
| <release version="1.2" date="2009-03-06" description="Another round of fixes; deprecates methods in preparation for varargs in java5"> |
| <action dev="dfabulich" type="update" issue="DBUTILS-52"> |
| Removed setDataSource method to guarantee thread safety |
| </action> |
| <action dev="sebb" type="update" issue="DBUTILS-51"> |
| Made numerous private instance members final to guarantee thread safety; changed protected member of KeyedHandler to final |
| </action> |
| <action dev="bayard" type="remove"> |
| Remove old Maven1/Ant build scripts |
| </action> |
| <action dev="dfabulich" type="update" issue="DBUTILS-29"> |
| Support bean property to SQL IN parameter mapping |
| </action> |
| <action dev="dfabulich" type="fix" issue="DBUTILS-31"> |
| fillStatement setNull bug with the Postgres/Derby JDBC driver (and others) |
| </action> |
| <action dev="dfabulich" type="update" issue="DBUTILS-33"> |
| Make GenericListHandler (now AbstractListHandler) public |
| </action> |
| <action dev="dfabulich" type="update" issue="DBUTILS-34"> |
| BasicRowProcessor loses any information on database field case |
| </action> |
| <action dev="dfabulich" type="update" issue="DBUTILS-37"> |
| BeanListHandler#handle(ResultSet) is not optimal |
| </action> |
| <action dev="dfabulich" type="fix" issue="DBUTILS-40"> |
| NullPointerException occured at rethrow method |
| </action> |
| <action dev="dfabulich" type="update" issue="DBUTILS-42"> |
| Object with Long or Decimal got initial zero value while database field is null |
| </action> |
| <action dev="dennisl" type="update" issue="DBUTILS-38"> |
| example documentation page, update query |
| </action> |
| <action dev="bayard" type="fix" issue="DBUTILS-36"> |
| Add serialVersionUID to BasicRowProcessor.CaseInsensitiveHashMap |
| </action> |
| </release> |
| <release version="1.1" date="2006-12-01" description="Last couple of years of fixes"> |
| |
| <action dev="bayard" type="fix" issue="DBUTILS-32"> |
| Tests fail to build under 1.6, and warning while compiling source |
| </action> |
| <action dev="bayard" type="fix" issue="DBUTILS-1"> |
| BeanListHandler and BeanHandler fail to support java.sql.Date() |
| </action> |
| <action dev="bayard" type="update" issue="DBUTILS-16"> |
| ResultSetRowProcessor abstract handler and some classes rework |
| </action> |
| <action dev="bayard" type="fix" issue="DBUTILS-3"> |
| Setting bean properties fails silently |
| </action> |
| <action dev="dgraham" type="fix" issue="DBUTILS-9"> |
| MockResultSet needs to handle equals and hashCode |
| </action> |
| <action dev="bayard" type="fix" issue="DBUTILS-7"> |
| MockResultSet: Throw UnsupportedOperationException for not implemented methods |
| </action> |
| <action dev="dgraham" type="add" issue="DBUTILS-20"> |
| Implement Pluggable Adaptors to Make BeanHandler Smarter |
| </action> |
| <action dev="dgraham" type="update" issue="DBUTILS-15"> |
| Patch for extending BasicRowProcessor |
| </action> |
| <action dev="dgraham" type="add" issue="DBUTILS-12"> |
| Protected QueryRunner.close() methods |
| </action> |
| <action dev="dgraham" type="update" issue="DBUTILS-23"> |
| Updated docs for example.html page (select AS) |
| </action> |
| <action dev="dgraham" type="add" issue="DBUTILS-4"> |
| Added protected ResultSetIterator.rethrow() method to wrap SQLExceptions in |
| RuntimeExceptions. |
| </action> |
| <action dev="dgraham" type="update" issue="DBUTILS-5"> |
| Added SQLState and error code to rethrown SQLExceptions. |
| </action> |
| <action dev="dgraham" type="add" issue="DBUTILS-25"> |
| Added KeyedHandler to create a Map of Maps from a ResultSet. |
| </action> |
| <action dev="dgraham" type="update" issue="DBUTILS-2"> |
| Use current class' ClassLoader instead of QueryLoader's ClassLoader |
| in loadQueries(). |
| </action> |
| <action dev="dgraham" type="update" issue="DBUTILS-22"> |
| Made QueryLoader.loadQueries() protected so subclasses can use query |
| repositories other than properties files. |
| </action> |
| <action dev="dgraham" type="update"> |
| QueryRunner now calls getDataSource() internally any time it needs access |
| to its DataSource object to allow subclasses to provide different behavior. |
| </action> |
| <action dev="dgraham" type="add"> |
| Added DbUtils.rollbackAndClose() and DbUtils.rollbackAndCloseQuietly(). |
| </action> |
| <action dev="dgraham" type="update" issue="DBUTILS-26"> |
| 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. |
| </action> |
| <action dev="dgraham" type="update" issue="DBUTILS-18"> |
| 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. |
| </action> |
| <action dev="dgraham" type="add" issue="DBUTILS-21"> |
| Added a protected QueryRunner.prepareConnection() method to |
| allow subclasses to customize the Connections retrieved from |
| the DataSource before they're used. |
| </action> |
| <action dev="dgraham" type="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. |
| </action> |
| <action dev="dgraham" type="add" issue="DBUTILS-13"> |
| Added QueryRunner.batch() methods for batch updates. |
| </action> |
| <action dev="dgraham" type="add" issue="DBUTILS-11"> |
| Added new ResultSetHandler implementation, ColumnListHandler, that |
| converts one ResultSet column into a List of Objects. |
| </action> |
| </release> |
| |
| <release version="1.0" date="2003-11-10" description="First release of DbUtils"> |
| <action type="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. |
| </action> |
| <action type="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. |
| </action> |
| <action type="add"> |
| ResultSet wrappers that decorate ResultSets with specialized |
| behavior. See the classes in the org.apache.commons.dbutils.wrappers.* |
| package for details. |
| </action> |
| <action type="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. |
| </action> |
| </release> |
| |
| </body> |
| </document> |