| | |
| | | package com.ruoyi.quartz.util; |
| | | |
| | | import cn.hutool.core.lang.Validator; |
| | | import com.ruoyi.common.utils.StringUtils; |
| | | import com.ruoyi.common.utils.spring.SpringUtils; |
| | | import com.ruoyi.quartz.domain.SysJob; |
| | | |
| | | import java.lang.reflect.InvocationTargetException; |
| | | import java.lang.reflect.Method; |
| | | import java.util.LinkedList; |
| | | import java.util.List; |
| | | import com.ruoyi.common.utils.StringUtils; |
| | | import com.ruoyi.common.utils.spring.SpringUtils; |
| | | import com.ruoyi.quartz.domain.SysJob; |
| | | |
| | | /** |
| | | * 任务执行工具 |
| | | * |
| | | * @deprecated 3.4.0删除 迁移至xxl-job |
| | | * @author ruoyi |
| | | */ |
| | | public class JobInvokeUtil |
| | |
| | | throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, |
| | | InvocationTargetException |
| | | { |
| | | if (Validator.isNotNull(methodParams) && methodParams.size() > 0) |
| | | if (StringUtils.isNotNull(methodParams) && methodParams.size() > 0) |
| | | { |
| | | Method method = bean.getClass().getDeclaredMethod(methodName, getMethodParamsType(methodParams)); |
| | | method.invoke(bean, getMethodParamsValue(methodParams)); |
| | |
| | | |
| | | /** |
| | | * 校验是否为为class包名 |
| | | * |
| | | * |
| | | * @param str 名称 |
| | | * @return true是 false否 |
| | | */ |
| | | public static boolean isValidClassName(String invokeTarget) |
| | | { |
| | | return StringUtils.count(invokeTarget, ".") > 1; |
| | | return StringUtils.countMatches(invokeTarget, ".") > 1; |
| | | } |
| | | |
| | | /** |
| | | * 获取bean名称 |
| | | * |
| | | * |
| | | * @param invokeTarget 目标字符串 |
| | | * @return bean名称 |
| | | */ |
| | | public static String getBeanName(String invokeTarget) |
| | | { |
| | | String beanName = StringUtils.subBefore(invokeTarget, "(",false); |
| | | return StringUtils.subBefore(beanName, ".",true); |
| | | String beanName = StringUtils.substringBefore(invokeTarget, "("); |
| | | return StringUtils.substringBeforeLast(beanName, "."); |
| | | } |
| | | |
| | | /** |
| | | * 获取bean方法 |
| | | * |
| | | * |
| | | * @param invokeTarget 目标字符串 |
| | | * @return method方法 |
| | | */ |
| | | public static String getMethodName(String invokeTarget) |
| | | { |
| | | String methodName = StringUtils.subBefore(invokeTarget, "(",false); |
| | | return StringUtils.subAfter(methodName, ".",true); |
| | | String methodName = StringUtils.substringBefore(invokeTarget, "("); |
| | | return StringUtils.substringAfterLast(methodName, "."); |
| | | } |
| | | |
| | | /** |
| | | * 获取method方法参数相关列表 |
| | | * |
| | | * |
| | | * @param invokeTarget 目标字符串 |
| | | * @return method方法相关参数列表 |
| | | */ |
| | | public static List<Object[]> getMethodParams(String invokeTarget) |
| | | { |
| | | String methodStr = StringUtils.subBetween(invokeTarget, "(", ")"); |
| | | String methodStr = StringUtils.substringBetween(invokeTarget, "(", ")"); |
| | | if (StringUtils.isEmpty(methodStr)) |
| | | { |
| | | return null; |
| | |
| | | |
| | | /** |
| | | * 获取参数类型 |
| | | * |
| | | * |
| | | * @param methodParams 参数相关列表 |
| | | * @return 参数类型列表 |
| | | */ |
| | |
| | | |
| | | /** |
| | | * 获取参数值 |
| | | * |
| | | * |
| | | * @param methodParams 参数相关列表 |
| | | * @return 参数值列表 |
| | | */ |