1. Class changes: org.apache.commons.dbutils.QueryRunner add methods: 1.public Object query (Connection conn, String sql, Object [] params, ResultSetHandler rsh, int startPos, int count) throws SQLException 2.public Object query (String sql, Object param, ResultSetHandler rsh, int startPos, int count) throwsSQLException 3.public Object query (Connection conn, String sql, ResultSetHandler rsh, int startPos, int count) throwsSQLException 4.public Object query (String sql, Object [ ] Params, ResultSetHandler RSH, int StartPos, int count) Throwssqlexception The above method is mainly used to add paging support. 2. Class: org.apache.commons.dbutils.rowprocessor (interface) Add method: 1.public List TOBE, INT StartPOS, int count "THROWS SQLEXCEPTION is used to support paging query operations. 3. Classification Class: Org.apache.commons.dbutils.basicrowProcessor Add Method: 1.public List TOBE, int StartPos, int count "THROWS SQLEXCEPTION is used to support paging. Modification method: 1.private Object createBean (ResultSet rs, Class type, PropertyDescriptor [] props, int [] columnToProperty, int cols) throws SQLException modified portion (add): else if (value == null) {} else if (propType == java.sql.date.class) {value = rs.getdate (i);} else if (propTyPe == java.util.date.class) {value = rs.getdate (i);} else f == java.sql.timestamp.class) {value = rs.gettimestamp (i);} else if (propType == org.apache.struts.upload.formfile.class) {// to do.} for support New type.