Skip to content
项目
群组
代码片段
帮助
正在加载...
登录
切换导航
X
XXL-JOB
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
靳帅
XXL-JOB
Commits
14d9d6a7
提交
14d9d6a7
authored
12月 23, 2017
作者:
xuxueli
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
任务参数“IJobHandler.execute”入参改为“String params”,增强入参通用性。
脚本任务Shell、Python和Nodejs等支持获取分片参数;
上级
6042011d
隐藏空白字符变更
内嵌
并排
正在显示
13 个修改的文件
包含
46 行增加
和
32 行删除
+46
-32
XXL-JOB官方文档.md
doc/XXL-JOB官方文档.md
+19
-8
tables_xxl_job.sql
doc/db/tables_xxl_job.sql
+2
-2
jobinfo.index.ftl
...rc/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl
+3
-3
IJobHandler.java
...e/src/main/java/com/xxl/job/core/handler/IJobHandler.java
+2
-2
GlueJobHandler.java
...in/java/com/xxl/job/core/handler/impl/GlueJobHandler.java
+2
-2
ScriptJobHandler.java
.../java/com/xxl/job/core/handler/impl/ScriptJobHandler.java
+10
-2
JobThread.java
...core/src/main/java/com/xxl/job/core/thread/JobThread.java
+2
-7
DemoJobHandler.java
...eli/executor/sample/jfinal/jobhandler/DemoJobHandler.java
+1
-1
ShardingJobHandler.java
...executor/sample/jfinal/jobhandler/ShardingJobHandler.java
+1
-1
DemoJobHandler.java
...m/xxl/job/executor/service/jobhandler/DemoJobHandler.java
+1
-1
ShardingJobHandler.java
...l/job/executor/service/jobhandler/ShardingJobHandler.java
+1
-1
DemoJobHandler.java
...m/xxl/job/executor/service/jobhandler/DemoJobHandler.java
+1
-1
ShardingJobHandler.java
...l/job/executor/service/jobhandler/ShardingJobHandler.java
+1
-1
没有找到文件。
doc/XXL-JOB官方文档.md
浏览文件 @
14d9d6a7
...
@@ -791,11 +791,21 @@ XXL-JOB会为每次调度请求生成一个单独的日志文件,需要通过
...
@@ -791,11 +791,21 @@ XXL-JOB会为每次调度请求生成一个单独的日志文件,需要通过
"分片广播" 以执行器为维度进行分片,支持动态扩容执行器集群从而动态增加分片数量,协同进行业务处理;在进行大数据量业务操作时可显著提升任务处理能力和速度。
"分片广播" 以执行器为维度进行分片,支持动态扩容执行器集群从而动态增加分片数量,协同进行业务处理;在进行大数据量业务操作时可显著提升任务处理能力和速度。
"分片广播" 和普通任务开发流程一致,不同之处在于可以可以获取分片参数,获取分片参数
对象的代码如下(可参考Sample示例执行器中的示例任务"ShardingJobHandler" ):
"分片广播" 和普通任务开发流程一致,不同之处在于可以可以获取分片参数,获取分片参数
进行分片业务处理。
ShardingUtil.ShardingVO shardingVO = ShardingUtil.getShardingVo();
-
Java语言任务获取分片参数方式:BEAN、GLUE模式(Java)
```
// 可参考Sample示例执行器中的示例任务"ShardingJobHandler"了解试用
ShardingUtil.ShardingVO shardingVO = ShardingUtil.getShardingVo();
```
-
脚本语言任务获取分片参数方式:GLUE模式(Shell)、GLUE模式(Python)、GLUE模式(Nodejs)
```
// 脚本任务入参固定为三个,依次为:任务传参、分片序号、分片总数。以Shell模式任务为例,获取分片参数代码如下
echo "分片序号 index = $2"
echo "分片总数 total = $3"
```
该分片参数对象拥有两个属性
:
分片参数属性说明
:
index:当前分片序号(从0开始),执行器集群列表中当前执行器的序号;
index:当前分片序号(从0开始),执行器集群列表中当前执行器的序号;
total:总分片数,执行器集群的总机器数量;
total:总分片数,执行器集群的总机器数量;
...
@@ -1083,7 +1093,8 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
...
@@ -1083,7 +1093,8 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
-
18、任务列表界面,左侧菜单合并时样式错乱问题修复;
-
18、任务列表界面,左侧菜单合并时样式错乱问题修复;
-
19、执行器地址录入交互优化,地址长度扩展支持至512位,支持大规模执行器集群配置;
-
19、执行器地址录入交互优化,地址长度扩展支持至512位,支持大规模执行器集群配置;
-
20、项目依赖升级,如spring、jackson等;
-
20、项目依赖升级,如spring、jackson等;
-
21、任务参数“IJobHandler.execute”入参改为“String params”,增强入参通用性。
-
22、脚本任务Shell、Python和Nodejs等支持获取分片参数;
### TODO LIST
### TODO LIST
-
1、任务权限管理:执行器为粒度分配权限,核心操作校验权限;
-
1、任务权限管理:执行器为粒度分配权限,核心操作校验权限;
...
@@ -1099,10 +1110,10 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
...
@@ -1099,10 +1110,10 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
-
11、任务日志,记录发起调度的机器信息;
-
11、任务日志,记录发起调度的机器信息;
-
12、任务告警逻辑调整:任务调度,以及任务回调失败时,均推送监控队列。后期考虑通过任务Log字段控制告警状态;
-
12、任务告警逻辑调整:任务调度,以及任务回调失败时,均推送监控队列。后期考虑通过任务Log字段控制告警状态;
-
13、执行器Log清理功能:调度中心Log删除时同步删除执行器中的Log文件;
-
13、执行器Log清理功能:调度中心Log删除时同步删除执行器中的Log文件;
-
14、
脚本任务 Shell、Python和Nodejs,如何友好获取分片参数
;
-
14、
Bean模式任务,JobHandler自动从执行器中查询展示为下拉框,选择后自动填充任务名称等属性
;
-
15、
Bean模式任务,JobHandler自动从执行器中查询展示为下拉框,选择后自动填充任务名称等属性
;
-
15、
任务告警邮件优化,调整为表格形式
;
-
16、
任务告警邮件优化,调整为表格形式
;
-
16、
执行器回调地址格式兼容,支持非"/"结尾路径配置
;
-
17、
执行器回调地址格式兼容,支持非"/"结尾路径配置
;
-
17、
任务事件触发API服务优化,支持调用时动态传参
;
## 七、其他
## 七、其他
...
...
doc/db/tables_xxl_job.sql
浏览文件 @
14d9d6a7
...
@@ -156,7 +156,7 @@ CREATE TABLE `XXL_JOB_QRTZ_TRIGGER_INFO` (
...
@@ -156,7 +156,7 @@ CREATE TABLE `XXL_JOB_QRTZ_TRIGGER_INFO` (
`alarm_email`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'报警邮件'
,
`alarm_email`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'报警邮件'
,
`executor_route_strategy`
varchar
(
50
)
DEFAULT
NULL
COMMENT
'执行器路由策略'
,
`executor_route_strategy`
varchar
(
50
)
DEFAULT
NULL
COMMENT
'执行器路由策略'
,
`executor_handler`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'执行器任务handler'
,
`executor_handler`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'执行器任务handler'
,
`executor_param`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'执行器任务参数'
,
`executor_param`
varchar
(
512
)
DEFAULT
NULL
COMMENT
'执行器任务参数'
,
`executor_block_strategy`
varchar
(
50
)
DEFAULT
NULL
COMMENT
'阻塞处理策略'
,
`executor_block_strategy`
varchar
(
50
)
DEFAULT
NULL
COMMENT
'阻塞处理策略'
,
`executor_fail_strategy`
varchar
(
50
)
DEFAULT
NULL
COMMENT
'失败处理策略'
,
`executor_fail_strategy`
varchar
(
50
)
DEFAULT
NULL
COMMENT
'失败处理策略'
,
`glue_type`
varchar
(
50
)
NOT
NULL
COMMENT
'GLUE类型'
,
`glue_type`
varchar
(
50
)
NOT
NULL
COMMENT
'GLUE类型'
,
...
@@ -174,7 +174,7 @@ CREATE TABLE `XXL_JOB_QRTZ_TRIGGER_LOG` (
...
@@ -174,7 +174,7 @@ CREATE TABLE `XXL_JOB_QRTZ_TRIGGER_LOG` (
`glue_type`
varchar
(
50
)
DEFAULT
NULL
COMMENT
'GLUE类型'
,
`glue_type`
varchar
(
50
)
DEFAULT
NULL
COMMENT
'GLUE类型'
,
`executor_address`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'执行器地址,本次执行的地址'
,
`executor_address`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'执行器地址,本次执行的地址'
,
`executor_handler`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'执行器任务handler'
,
`executor_handler`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'执行器任务handler'
,
`executor_param`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'executor_param
'
,
`executor_param`
varchar
(
512
)
DEFAULT
NULL
COMMENT
'执行器任务参数
'
,
`trigger_time`
datetime
DEFAULT
NULL
COMMENT
'调度-时间'
,
`trigger_time`
datetime
DEFAULT
NULL
COMMENT
'调度-时间'
,
`trigger_code`
varchar
(
255
)
NOT
NULL
DEFAULT
'0'
COMMENT
'调度-结果'
,
`trigger_code`
varchar
(
255
)
NOT
NULL
DEFAULT
'0'
COMMENT
'调度-结果'
,
`trigger_msg`
varchar
(
2048
)
DEFAULT
NULL
COMMENT
'调度-日志'
,
`trigger_msg`
varchar
(
2048
)
DEFAULT
NULL
COMMENT
'调度-日志'
,
...
...
xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl
浏览文件 @
14d9d6a7
...
@@ -143,7 +143,7 @@
...
@@ -143,7 +143,7 @@
</div>
</div>
<div
class=
"form-group"
>
<div
class=
"form-group"
>
<label
for=
"firstname"
class=
"col-sm-2 control-label"
>
执行参数
<font
color=
"black"
>
*
</font></label>
<label
for=
"firstname"
class=
"col-sm-2 control-label"
>
执行参数
<font
color=
"black"
>
*
</font></label>
<div
class=
"col-sm-4"
><input
type=
"text"
class=
"form-control"
name=
"executorParam"
placeholder=
"请输入“执行参数”"
maxlength=
"
100
"
></div>
<div
class=
"col-sm-4"
><input
type=
"text"
class=
"form-control"
name=
"executorParam"
placeholder=
"请输入“执行参数”"
maxlength=
"
512
"
></div>
<label
for=
"lastname"
class=
"col-sm-2 control-label"
>
子任务Key
<font
color=
"black"
>
*
</font></label>
<label
for=
"lastname"
class=
"col-sm-2 control-label"
>
子任务Key
<font
color=
"black"
>
*
</font></label>
<div
class=
"col-sm-4"
><input
type=
"text"
class=
"form-control"
name=
"childJobKey"
placeholder=
"请输入子任务的任务Key,如存在多个逗号分隔"
maxlength=
"100"
></div>
<div
class=
"col-sm-4"
><input
type=
"text"
class=
"form-control"
name=
"childJobKey"
placeholder=
"请输入子任务的任务Key,如存在多个逗号分隔"
maxlength=
"100"
></div>
</div>
</div>
...
@@ -192,7 +192,7 @@ import com.xxl.job.core.handler.IJobHandler;
...
@@ -192,7 +192,7 @@ import com.xxl.job.core.handler.IJobHandler;
public class DemoGlueJobHandler extends IJobHandler {
public class DemoGlueJobHandler extends IJobHandler {
@Override
@Override
public ReturnT
<String>
execute(String
... params
) throws Exception {
public ReturnT
<String>
execute(String
param
) throws Exception {
XxlJobLogger.log("XXL-JOB, Hello World.");
XxlJobLogger.log("XXL-JOB, Hello World.");
return ReturnT.SUCCESS;
return ReturnT.SUCCESS;
}
}
...
@@ -300,7 +300,7 @@ process.exit(0)
...
@@ -300,7 +300,7 @@ process.exit(0)
</div>
</div>
<div
class=
"form-group"
>
<div
class=
"form-group"
>
<label
for=
"firstname"
class=
"col-sm-2 control-label"
>
执行参数
<font
color=
"black"
>
*
</font></label>
<label
for=
"firstname"
class=
"col-sm-2 control-label"
>
执行参数
<font
color=
"black"
>
*
</font></label>
<div
class=
"col-sm-4"
><input
type=
"text"
class=
"form-control"
name=
"executorParam"
placeholder=
"请输入“执行参数”"
maxlength=
"
100
"
></div>
<div
class=
"col-sm-4"
><input
type=
"text"
class=
"form-control"
name=
"executorParam"
placeholder=
"请输入“执行参数”"
maxlength=
"
512
"
></div>
<label
for=
"lastname"
class=
"col-sm-2 control-label"
>
子任务Key
<font
color=
"black"
>
*
</font></label>
<label
for=
"lastname"
class=
"col-sm-2 control-label"
>
子任务Key
<font
color=
"black"
>
*
</font></label>
<div
class=
"col-sm-4"
><input
type=
"text"
class=
"form-control"
name=
"childJobKey"
placeholder=
"请输入子任务的任务Key,如存在多个逗号分隔"
maxlength=
"100"
></div>
<div
class=
"col-sm-4"
><input
type=
"text"
class=
"form-control"
name=
"childJobKey"
placeholder=
"请输入子任务的任务Key,如存在多个逗号分隔"
maxlength=
"100"
></div>
</div>
</div>
...
...
xxl-job-core/src/main/java/com/xxl/job/core/handler/IJobHandler.java
浏览文件 @
14d9d6a7
...
@@ -21,11 +21,11 @@ public abstract class IJobHandler {
...
@@ -21,11 +21,11 @@ public abstract class IJobHandler {
/**
/**
* execute handler
* execute handler
*
*
* @param param
s
* @param param
* @return
* @return
* @throws Exception
* @throws Exception
*/
*/
public
abstract
ReturnT
<
String
>
execute
(
String
...
params
)
throws
Exception
;
public
abstract
ReturnT
<
String
>
execute
(
String
param
)
throws
Exception
;
/**
/**
...
...
xxl-job-core/src/main/java/com/xxl/job/core/handler/impl/GlueJobHandler.java
浏览文件 @
14d9d6a7
...
@@ -21,9 +21,9 @@ public class GlueJobHandler extends IJobHandler {
...
@@ -21,9 +21,9 @@ public class GlueJobHandler extends IJobHandler {
}
}
@Override
@Override
public
ReturnT
<
String
>
execute
(
String
...
params
)
throws
Exception
{
public
ReturnT
<
String
>
execute
(
String
param
)
throws
Exception
{
XxlJobLogger
.
log
(
"----------- glue.version:"
+
glueUpdatetime
+
" -----------"
);
XxlJobLogger
.
log
(
"----------- glue.version:"
+
glueUpdatetime
+
" -----------"
);
return
jobHandler
.
execute
(
param
s
);
return
jobHandler
.
execute
(
param
);
}
}
}
}
xxl-job-core/src/main/java/com/xxl/job/core/handler/impl/ScriptJobHandler.java
浏览文件 @
14d9d6a7
...
@@ -6,6 +6,7 @@ import com.xxl.job.core.handler.IJobHandler;
...
@@ -6,6 +6,7 @@ import com.xxl.job.core.handler.IJobHandler;
import
com.xxl.job.core.log.XxlJobFileAppender
;
import
com.xxl.job.core.log.XxlJobFileAppender
;
import
com.xxl.job.core.log.XxlJobLogger
;
import
com.xxl.job.core.log.XxlJobLogger
;
import
com.xxl.job.core.util.ScriptUtil
;
import
com.xxl.job.core.util.ScriptUtil
;
import
com.xxl.job.core.util.ShardingUtil
;
/**
/**
* Created by xuxueli on 17/4/27.
* Created by xuxueli on 17/4/27.
...
@@ -29,7 +30,7 @@ public class ScriptJobHandler extends IJobHandler {
...
@@ -29,7 +30,7 @@ public class ScriptJobHandler extends IJobHandler {
}
}
@Override
@Override
public
ReturnT
<
String
>
execute
(
String
...
params
)
throws
Exception
{
public
ReturnT
<
String
>
execute
(
String
param
)
throws
Exception
{
if
(!
glueType
.
isScript
())
{
if
(!
glueType
.
isScript
())
{
return
new
ReturnT
<
String
>(
IJobHandler
.
FAIL
.
getCode
(),
"glueType["
+
glueType
+
"] invalid."
);
return
new
ReturnT
<
String
>(
IJobHandler
.
FAIL
.
getCode
(),
"glueType["
+
glueType
+
"] invalid."
);
...
@@ -50,9 +51,16 @@ public class ScriptJobHandler extends IJobHandler {
...
@@ -50,9 +51,16 @@ public class ScriptJobHandler extends IJobHandler {
// log file
// log file
String
logFileName
=
XxlJobFileAppender
.
contextHolder
.
get
();
String
logFileName
=
XxlJobFileAppender
.
contextHolder
.
get
();
// script params:0=param、1=分片序号、2=分片总数
ShardingUtil
.
ShardingVO
shardingVO
=
ShardingUtil
.
getShardingVo
();
String
[]
scriptParams
=
new
String
[
3
];
scriptParams
[
0
]
=
param
;
scriptParams
[
1
]
=
String
.
valueOf
(
shardingVO
.
getIndex
());
scriptParams
[
2
]
=
String
.
valueOf
(
shardingVO
.
getTotal
());
// invoke
// invoke
XxlJobLogger
.
log
(
"----------- script file:"
+
scriptFileName
+
" -----------"
);
XxlJobLogger
.
log
(
"----------- script file:"
+
scriptFileName
+
" -----------"
);
int
exitValue
=
ScriptUtil
.
execToFile
(
cmd
,
scriptFileName
,
logFileName
,
p
arams
);
int
exitValue
=
ScriptUtil
.
execToFile
(
cmd
,
scriptFileName
,
logFileName
,
scriptP
arams
);
ReturnT
<
String
>
result
=
(
exitValue
==
0
)?
IJobHandler
.
SUCCESS
:
new
ReturnT
<
String
>(
IJobHandler
.
FAIL
.
getCode
(),
"script exit value("
+
exitValue
+
") is failed"
);
ReturnT
<
String
>
result
=
(
exitValue
==
0
)?
IJobHandler
.
SUCCESS
:
new
ReturnT
<
String
>(
IJobHandler
.
FAIL
.
getCode
(),
"script exit value("
+
exitValue
+
") is failed"
);
return
result
;
return
result
;
}
}
...
...
xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java
浏览文件 @
14d9d6a7
...
@@ -114,19 +114,14 @@ public class JobThread extends Thread{
...
@@ -114,19 +114,14 @@ public class JobThread extends Thread{
idleTimes
=
0
;
idleTimes
=
0
;
triggerLogIdSet
.
remove
(
triggerParam
.
getLogId
());
triggerLogIdSet
.
remove
(
triggerParam
.
getLogId
());
// parse param
String
[]
handlerParams
=
(
triggerParam
.
getExecutorParams
()!=
null
&&
triggerParam
.
getExecutorParams
().
trim
().
length
()>
0
)
?
(
String
[])(
Arrays
.
asList
(
triggerParam
.
getExecutorParams
().
split
(
","
)).
toArray
())
:
null
;
// log filename, like "logPath/yyyy-MM-dd/9999.log"
// log filename, like "logPath/yyyy-MM-dd/9999.log"
String
logFileName
=
XxlJobFileAppender
.
makeLogFileName
(
new
Date
(
triggerParam
.
getLogDateTim
()),
triggerParam
.
getLogId
());
String
logFileName
=
XxlJobFileAppender
.
makeLogFileName
(
new
Date
(
triggerParam
.
getLogDateTim
()),
triggerParam
.
getLogId
());
XxlJobFileAppender
.
contextHolder
.
set
(
logFileName
);
XxlJobFileAppender
.
contextHolder
.
set
(
logFileName
);
ShardingUtil
.
setShardingVo
(
new
ShardingUtil
.
ShardingVO
(
triggerParam
.
getBroadcastIndex
(),
triggerParam
.
getBroadcastTotal
()));
ShardingUtil
.
setShardingVo
(
new
ShardingUtil
.
ShardingVO
(
triggerParam
.
getBroadcastIndex
(),
triggerParam
.
getBroadcastTotal
()));
// execute
// execute
XxlJobLogger
.
log
(
"<br>----------- xxl-job job execute start -----------<br>----------- Param
s:"
+
Arrays
.
toString
(
handlerParams
));
XxlJobLogger
.
log
(
"<br>----------- xxl-job job execute start -----------<br>----------- Param
:"
+
triggerParam
.
getExecutorParams
(
));
executeResult
=
handler
.
execute
(
handlerParams
);
executeResult
=
handler
.
execute
(
triggerParam
.
getExecutorParams
()
);
if
(
executeResult
==
null
)
{
if
(
executeResult
==
null
)
{
executeResult
=
IJobHandler
.
FAIL
;
executeResult
=
IJobHandler
.
FAIL
;
}
}
...
...
xxl-job-executor-samples/xxl-job-executor-sample-jfinal/src/main/java/com/xuxueli/executor/sample/jfinal/jobhandler/DemoJobHandler.java
浏览文件 @
14d9d6a7
...
@@ -20,7 +20,7 @@ import java.util.concurrent.TimeUnit;
...
@@ -20,7 +20,7 @@ import java.util.concurrent.TimeUnit;
public
class
DemoJobHandler
extends
IJobHandler
{
public
class
DemoJobHandler
extends
IJobHandler
{
@Override
@Override
public
ReturnT
<
String
>
execute
(
String
...
params
)
throws
Exception
{
public
ReturnT
<
String
>
execute
(
String
param
)
throws
Exception
{
XxlJobLogger
.
log
(
"XXL-JOB, Hello World."
);
XxlJobLogger
.
log
(
"XXL-JOB, Hello World."
);
for
(
int
i
=
0
;
i
<
5
;
i
++)
{
for
(
int
i
=
0
;
i
<
5
;
i
++)
{
...
...
xxl-job-executor-samples/xxl-job-executor-sample-jfinal/src/main/java/com/xuxueli/executor/sample/jfinal/jobhandler/ShardingJobHandler.java
浏览文件 @
14d9d6a7
...
@@ -14,7 +14,7 @@ import com.xxl.job.core.util.ShardingUtil;
...
@@ -14,7 +14,7 @@ import com.xxl.job.core.util.ShardingUtil;
public
class
ShardingJobHandler
extends
IJobHandler
{
public
class
ShardingJobHandler
extends
IJobHandler
{
@Override
@Override
public
ReturnT
<
String
>
execute
(
String
...
params
)
throws
Exception
{
public
ReturnT
<
String
>
execute
(
String
param
)
throws
Exception
{
// 分片参数
// 分片参数
ShardingUtil
.
ShardingVO
shardingVO
=
ShardingUtil
.
getShardingVo
();
ShardingUtil
.
ShardingVO
shardingVO
=
ShardingUtil
.
getShardingVo
();
...
...
xxl-job-executor-samples/xxl-job-executor-sample-spring/src/main/java/com/xxl/job/executor/service/jobhandler/DemoJobHandler.java
浏览文件 @
14d9d6a7
...
@@ -25,7 +25,7 @@ import java.util.concurrent.TimeUnit;
...
@@ -25,7 +25,7 @@ import java.util.concurrent.TimeUnit;
public
class
DemoJobHandler
extends
IJobHandler
{
public
class
DemoJobHandler
extends
IJobHandler
{
@Override
@Override
public
ReturnT
<
String
>
execute
(
String
...
params
)
throws
Exception
{
public
ReturnT
<
String
>
execute
(
String
param
)
throws
Exception
{
XxlJobLogger
.
log
(
"XXL-JOB, Hello World."
);
XxlJobLogger
.
log
(
"XXL-JOB, Hello World."
);
for
(
int
i
=
0
;
i
<
5
;
i
++)
{
for
(
int
i
=
0
;
i
<
5
;
i
++)
{
...
...
xxl-job-executor-samples/xxl-job-executor-sample-spring/src/main/java/com/xxl/job/executor/service/jobhandler/ShardingJobHandler.java
浏览文件 @
14d9d6a7
...
@@ -18,7 +18,7 @@ import org.springframework.stereotype.Service;
...
@@ -18,7 +18,7 @@ import org.springframework.stereotype.Service;
public
class
ShardingJobHandler
extends
IJobHandler
{
public
class
ShardingJobHandler
extends
IJobHandler
{
@Override
@Override
public
ReturnT
<
String
>
execute
(
String
...
params
)
throws
Exception
{
public
ReturnT
<
String
>
execute
(
String
param
)
throws
Exception
{
// 分片参数
// 分片参数
ShardingUtil
.
ShardingVO
shardingVO
=
ShardingUtil
.
getShardingVo
();
ShardingUtil
.
ShardingVO
shardingVO
=
ShardingUtil
.
getShardingVo
();
...
...
xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/java/com/xxl/job/executor/service/jobhandler/DemoJobHandler.java
浏览文件 @
14d9d6a7
...
@@ -25,7 +25,7 @@ import java.util.concurrent.TimeUnit;
...
@@ -25,7 +25,7 @@ import java.util.concurrent.TimeUnit;
public
class
DemoJobHandler
extends
IJobHandler
{
public
class
DemoJobHandler
extends
IJobHandler
{
@Override
@Override
public
ReturnT
<
String
>
execute
(
String
...
params
)
throws
Exception
{
public
ReturnT
<
String
>
execute
(
String
param
)
throws
Exception
{
XxlJobLogger
.
log
(
"XXL-JOB, Hello World."
);
XxlJobLogger
.
log
(
"XXL-JOB, Hello World."
);
for
(
int
i
=
0
;
i
<
5
;
i
++)
{
for
(
int
i
=
0
;
i
<
5
;
i
++)
{
...
...
xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/java/com/xxl/job/executor/service/jobhandler/ShardingJobHandler.java
浏览文件 @
14d9d6a7
...
@@ -18,7 +18,7 @@ import org.springframework.stereotype.Service;
...
@@ -18,7 +18,7 @@ import org.springframework.stereotype.Service;
public
class
ShardingJobHandler
extends
IJobHandler
{
public
class
ShardingJobHandler
extends
IJobHandler
{
@Override
@Override
public
ReturnT
<
String
>
execute
(
String
...
params
)
throws
Exception
{
public
ReturnT
<
String
>
execute
(
String
param
)
throws
Exception
{
// 分片参数
// 分片参数
ShardingUtil
.
ShardingVO
shardingVO
=
ShardingUtil
.
getShardingVo
();
ShardingUtil
.
ShardingVO
shardingVO
=
ShardingUtil
.
getShardingVo
();
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论