Commons-dbUtils开发应用和研究(五)

 protected int[] mapColumnsToProperties(ResultSetMetaData rsmd,

            PropertyDescriptor[] props) throws SQLException {

 

        int cols = rsmd.getColumnCount();

        int columnToProperty[] = new int[cols + 1];

        Arrays.fill(columnToProperty, PROPERTY_NOT_FOUND);

 

        for (int col = 1; col <= cols; col++) {

            String columnName = rsmd.getColumnName(col);

            for (int i = 0; i < props.length; i++) {

 

                if (columnName.equalsIgnoreCase(props[i].getName())) {

                    columnToProperty[col] = i;

                    break;

                }

            }

        }

         return columnToProperty;

    }

     /**

     * 转换一行记录为一个对象

     */

    protected Object processColumn(ResultSet rs, int index, Class propType)

        throws SQLException {

         if (propType.equals(String.class)) {

            return rs.getString(index);

                  } else if (

            propType.equals(Integer.TYPE) || propType.equals(Integer.class)) {

            return new Integer(rs.getInt(index));

         } else if (

            propType.equals(Boolean.TYPE) || propType.equals(Boolean.class)) {

            return new Boolean(rs.getBoolean(index));

         } else if (propType.equals(Long.TYPE) || propType.equals(Long.class)) {

            return new Long(rs.getLong(index));

         } else if (

            propType.equals(Double.TYPE) || propType.equals(Double.class)) {

            return new Double(rs.getDouble(index));

         } else if (

            propType.equals(Float.TYPE) || propType.equals(Float.class)) {

            return new Float(rs.getFloat(index));

         } else if (

            propType.equals(Short.TYPE) || propType.equals(Short.class)) {

            return new Short(rs.getShort(index));

         } else if (propType.equals(Byte.TYPE) || propType.equals(Byte.class)) {

            return new Byte(rs.getByte(index));

           

        } else if (propType.equals(Timestamp.class)) {

            return rs.getTimestamp(index);

         } else {

            return rs.getObject(index);

        }

     }

 }

你可能感兴趣的:(Commons-dbUtils开发应用和研究(五))