日期:2014-05-16 浏览次数:20496 次
以下是 _recordMappingToMap的源代码
/** * 将ResultSet结果集中的记录映射到Map对象中. * * @param fieldClassName 是JDBC API中的类型名称, * @param fieldName 是字段名, * @param rs 是一个ResultSet查询结果集, * @param fieldValue Map对象,用于存贮一条记录. * @throws SQLException */ private void _recordMappingToMap(String fieldClassName, String fieldName, ResultSet rs, Map fieldValue) throws SQLException { fieldName = fieldName.toLowerCase(); //优先规则:常用类型靠前 if (fieldClassName.equals("java.lang.String")) { String s = rs.getString(fieldName); if (rs.wasNull()) { fieldValue.put(fieldName, null); } else { fieldValue.put(fieldName, s); } } else if (fieldClassName.equals("java.lang.Integer")) { int s = rs.getInt(fieldName); if (rs.wasNull()) { fieldValue.put(fieldName, null); } else { fieldValue.put(fieldName, s);//早期jdk需要包装,jdk1.5后不需要包装 } } else if (fieldClassName.equals("java.lang.Long")) { long s = rs.getLong(fieldName); if (rs.wasNull()) { fieldValue.put(fieldName, null); } else { fieldValue.put(fieldName, s); } } else if (fieldClassName.equals("java.lang.Boolean")) { boolean s = rs.getBoolean(fieldName); if (rs.wasNull()) { fieldValue.put(fieldName, null); } else { fieldValue.put(fieldName, s); } } else if (fieldClassName.equals("java.lang.Short")) { short s = rs.getShort(fieldName); if (rs.wasNull()) { fieldValue.put(fieldName, null); } else { fieldValue.put(fieldName, s); } } else if (fieldClassName.equals("java.lang.Float")) { float s = rs.getFloat(fieldName); if (rs.wasNull()) { fieldValue.put(fieldName, null); } else { fieldValue.put(fieldName, s); } } else if (fieldClassName.equals("java.lang.Double")) { double s = rs.getDouble(fieldName);