/** * unbiz-genericdao#com.baidu.unbiz.common.genericdao.util.MapperUtils.java * 上午11:09:16 created by Darwin(Tianxin) */ package com.baidu.unbiz.common.genericdao.util; import java.sql.ResultSet; import java.sql.SQLException; import java.util.Collection; import java.util.Date; /** * @author Darwin(Tianxin) */ public class MapperUtils { /** * 在rs中获取column字段的typeClass型的值 * * @param rs * @param column * @param paramClass * * @return * * @throws SQLException */ public static Object getValue4Type(ResultSet rs, String column, Class<?> typeClass) throws SQLException { if (Collection.class.isAssignableFrom(typeClass)) { return null; } try { rs.findColumn(column); } catch (Exception e) { e.printStackTrace(); return null; } if (typeClass.equals(Integer.class) || typeClass.equals(Integer.TYPE)) { return rs.getInt(column); } if (typeClass.equals(Long.class) || typeClass.equals(Long.TYPE)) { return rs.getLong(column); } if (typeClass.equals(Boolean.class) || typeClass.equals(Boolean.TYPE)) { return rs.getBoolean(column); } if (typeClass.equals(Float.class) || typeClass.equals(Float.TYPE)) { return rs.getFloat(column); } if (typeClass.equals(Double.class) || typeClass.equals(Double.TYPE)) { return rs.getDouble(column); } if (typeClass.equals(Byte.class) || typeClass.equals(Byte.TYPE)) { return rs.getByte(column); } if (typeClass.equals(String.class)) { return rs.getString(column); } if (Date.class.isAssignableFrom(typeClass)) { return rs.getTimestamp(column); } if (java.sql.Date.class.isAssignableFrom(typeClass)) { return rs.getDate(column); } return rs.getObject(column); } }