我写了个通过反射执行指定方法的工具类

/**
 * ValueJson 处理类
 * Class Name: GovValueJsonUtil
 * 

Description: ValueJson个性配置处理类

* @author * @version 1.0.0 * @date 2023-05-04 19:35 */
public class GovValueJsonUtil { public static String convertFromEmp(DnTaSpInstanceDO return jsonObject.toString(); } /** * @param methodName 方法名称 * @return boolean * @Description: 方法执行 * @version v1.0 * @author cn32973 * @date 2023年5月4日 下午5:50:13 */ public static String invokeMethod(String methodName, Object... args) { try { Method method = GovValueJsonUtil.class.getDeclaredMethod(methodName, getParamTypes(args)); Object invoke = method.invoke(method, args); return invoke == null ? null : invoke.toString(); } catch (Exception e) { return null; } } private static Class<?>[] getParamTypes(Object[] args) { Class<?>[] paramTypes = new Class<?>[args.length]; for (int i = 0; i < args.length; i++) { paramTypes[i] = args[i].getClass(); } return paramTypes; } /** * @param methodName 方法名称 * @return boolean * @Description: 判断是否包含某个方法 * @version v1.0 * @author * @date 2023年5月4日 下午5:50:13 */ public static boolean hasMethod(String methodName) { if (StringUtils.isBlank(methodName)) { return false; } try { Method[] methods = GovValueJsonUtil.class.getDeclaredMethods(); for (Method method : methods) { if (methodName.equals(method.getName())) { return true; } } } catch (Exception e) { return false; } return false; } }

你可能感兴趣的:(java,jvm,开发语言)