- public static <T extends Object, V extends Object> T initBean(T bean,HashMap<String,V> mapPara ){
- Class<? extends Object> clazz = bean.getClass();
- Field[] fiedls = clazz.getDeclaredFields();
- try {
- for(Field field:fiedls){
- field.setAccessible(true);
- String fieldName = field.getName();
- V value = mapPara.get(fieldName);
- if(value == null){
- continue;
- }
- if(field.getType().getCanonicalName().equals("int") || field.getType().getCanonicalName().equals("java.lang.Integer")){
- field.setInt(bean, Integer.valueOf((String) value));
- }else if( field.getType().getCanonicalName().equals("java.util.Date")){
- field.set(bean, SmtUtil.StringToDate((String) value,"yyyy-MM-dd"));
- }else if(field.getType().getCanonicalName().equals("double") || field.getType().getCanonicalName().equals("java.lang.Double")){
- field.setDouble(bean,Double.valueOf((String) value));
- }else if(field.getType().getCanonicalName().equals("long") || field.getType().getCanonicalName().equals("java.lang.Long")){
- field.setDouble(bean,Long.valueOf((String) value));
- }else if(field.getType().getCanonicalName().equals("float") || field.getType().getCanonicalName().equals("java.lang.Float")){
- field.setDouble(bean,Float.valueOf((String) value));
- }else{
- field.set(bean,value);
- }
- }
- }catch (NumberFormatException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (IllegalArgumentException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return bean;
- }
- //该片段来自于http://www.codesnippet.cn/detail/140320149028.html
来源: http://www.codesnippet.cn/detail/140320149028.html