map to bean 映射

  • Post author:
  • Post category:其他


private ScheduleBean setJsonToBean(JSONObject objmap, ScheduleBean scheduleBean){

java.lang.reflect.Field[]fs = scheduleBean.getClass().getDeclaredFields();

java.lang.reflect.Method[]ms = scheduleBean.getClass().getDeclaredMethods();

String fieldName = “”;

String methodName = “”;

Object[] keySet = objmap.keySet().toArray();

Object value = null;

for (Object key : keySet) {

value = objmap.get(key.toString());

for (Field f : fs) {

fieldName = f.getName();

if(fieldName.equals(key.toString())){

for (Method m : ms) {

methodName = m.getName();

if(null != methodName && methodName.startsWith(“set”)

&& (methodName.substring(3).toLowerCase().equals(fieldName.toLowerCase()) ||

methodName.substring(3).toLowerCase().equals(fieldName.substring(2).toLowerCase()))) {

if(value instanceof Long){

for (Method m2 : ms) {

methodName = m2.getName();

if(null != methodName && methodName.startsWith(“get”)

&& methodName.substring(3).toLowerCase().equals(fieldName.toLowerCase())) {

if(m2.getReturnType().getName().equals(“int”)){

value = Integer.valueOf(value.toString());

}else if(m2.getReturnType().getName().equals(“short”)){

value = Short.valueOf(value.toString());

}

break;

}

}

}

Object[] inArgs = new Object[1];

inArgs[0] = value;

try {

m.invoke(scheduleBean, inArgs);

} catch (IllegalArgumentException e) {

e.printStackTrace();

} catch (IllegalAccessException e) {

e.printStackTrace();

} catch (InvocationTargetException e) {

e.printStackTrace();

}

break;

}

}

}

}

}

return scheduleBean;

}



版权声明:本文为jj_ecjtu原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。