From 8eff83e2b4e4e44e31db516b00967b2d5c5ede0a Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Wed, 26 Jun 2024 17:40:01 +0800
Subject: [PATCH] 优化代码
---
ruoyi-quartz/src/main/java/com/ruoyi/quartz/util/JobInvokeUtil.java | 30 +++++++++++++++---------------
1 files changed, 15 insertions(+), 15 deletions(-)
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/util/JobInvokeUtil.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/util/JobInvokeUtil.java
index 5519c67..9a90d7b 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/util/JobInvokeUtil.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/util/JobInvokeUtil.java
@@ -34,7 +34,7 @@
}
else
{
- Object bean = Class.forName(beanName).newInstance();
+ Object bean = Class.forName(beanName).getDeclaredConstructor().newInstance();
invokeMethod(bean, methodName, methodParams);
}
}
@@ -52,12 +52,12 @@
{
if (StringUtils.isNotNull(methodParams) && methodParams.size() > 0)
{
- Method method = bean.getClass().getDeclaredMethod(methodName, getMethodParamsType(methodParams));
+ Method method = bean.getClass().getMethod(methodName, getMethodParamsType(methodParams));
method.invoke(bean, getMethodParamsValue(methodParams));
}
else
{
- Method method = bean.getClass().getDeclaredMethod(methodName);
+ Method method = bean.getClass().getMethod(methodName);
method.invoke(bean);
}
}
@@ -65,7 +65,7 @@
/**
* 校验是否为为class包名
*
- * @param str 名称
+ * @param invokeTarget 名称
* @return true是 false否
*/
public static boolean isValidClassName(String invokeTarget)
@@ -110,30 +110,30 @@
{
return null;
}
- String[] methodParams = methodStr.split(",");
+ String[] methodParams = methodStr.split(",(?=([^\"']*[\"'][^\"']*[\"'])*[^\"']*$)");
List<Object[]> classs = new LinkedList<>();
for (int i = 0; i < methodParams.length; i++)
{
String str = StringUtils.trimToEmpty(methodParams[i]);
- // String字符串类型,包含'
- if (StringUtils.contains(str, "'"))
+ // String字符串类型,以'或"开头
+ if (StringUtils.startsWithAny(str, "'", "\""))
{
- classs.add(new Object[] { StringUtils.replace(str, "'", ""), String.class });
+ classs.add(new Object[] { StringUtils.substring(str, 1, str.length() - 1), String.class });
}
// boolean布尔类型,等于true或者false
- else if (StringUtils.equals(str, "true") || StringUtils.equalsIgnoreCase(str, "false"))
+ else if ("true".equalsIgnoreCase(str) || "false".equalsIgnoreCase(str))
{
classs.add(new Object[] { Boolean.valueOf(str), Boolean.class });
}
- // long长整形,包含L
- else if (StringUtils.containsIgnoreCase(str, "L"))
+ // long长整形,以L结尾
+ else if (StringUtils.endsWith(str, "L"))
{
- classs.add(new Object[] { Long.valueOf(StringUtils.replaceIgnoreCase(str, "L", "")), Long.class });
+ classs.add(new Object[] { Long.valueOf(StringUtils.substring(str, 0, str.length() - 1)), Long.class });
}
- // double浮点类型,包含D
- else if (StringUtils.containsIgnoreCase(str, "D"))
+ // double浮点类型,以D结尾
+ else if (StringUtils.endsWith(str, "D"))
{
- classs.add(new Object[] { Double.valueOf(StringUtils.replaceIgnoreCase(str, "D", "")), Double.class });
+ classs.add(new Object[] { Double.valueOf(StringUtils.substring(str, 0, str.length() - 1)), Double.class });
}
// 其他类型归类为整形
else
--
Gitblit v1.9.2