package com.jpush; import cn.jpush.statistics.excel.model.AdSettlementInfoModel; import cn.jpush.statistics.model.entity.AdSettlementInfo; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.HashMap; import java.util.Map; public class GetSetUtil { public static void main(String[] args) { setMethod(AdSettlementInfoModel.class,AdSettlementInfo.class,"model","info"); } // hiveData.setCpc(result.get("cpc")); private static void mapToPojo(Class clazz,String target , String mapGet){ Field[] fields = clazz.getDeclaredFields(); for (Field field : fields) { String name = field.getName(); char first = name.charAt(0); String substring = name.substring(1); String pre = Character.toUpperCase(first)+substring; System.out.println(target+pre+"("+mapGet+"(""+name+""));"); // System.out.println("hiveData.set"+pre+"(result.get(""+name+""));"); } } private static void setMethod(Class sourceClass,Class targetClass,String sourceName,String targeName){ Method[] sourceMethods = sourceClass.getMethods(); Method[] targetMethods = targetClass.getMethods(); Map<String,Method> sourceMethodMap = new HashMap<>(); Map<String,Method> targetMethodMap = new HashMap<>(); for (Method sourceMethod : sourceMethods) { sourceMethodMap.put(sourceMethod.getName(),sourceMethod); } for (Method targetMethod : targetMethods) { targetMethodMap.put(targetMethod.getName(),targetMethod); } for (Map.Entry<String, Method> stringMethodEntry : sourceMethodMap.entrySet()) { Method method = targetMethodMap.get(stringMethodEntry.getKey()); if(method == null){ continue; } String name = method.getName(); if(name.startsWith("get") && !"getClass".equals(name)){ String setName = name.substring(3); System.out.println(targeName+".set"+setName+"("+sourceName+"."+name+"());"); } } } }