blob: 5067bc32d9e16b0cc8496fba01e4fe0f9250a9e7 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en" class="js csstransforms3d">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<meta name="generator" content="Hugo 0.70.0" />
<meta name="description" content="">
<meta name="buildDate" content="2020-10-19 15:08:02">
<link rel="shortcut icon" href="https://shardingsphere.apache.org/elasticjob/images/favicon.png" type="image/x-icon" />
<title>Listener Development :: ElasticJob</title>
<link href="https://shardingsphere.apache.org/elasticjob/current/css/nucleus.css?1603091282" rel="stylesheet">
<link href="https://shardingsphere.apache.org/elasticjob/current/css/font-awesome.min.css?1603091282" rel="stylesheet">
<link href="https://shardingsphere.apache.org/elasticjob/current/css/hybrid.css?1603091282" rel="stylesheet">
<link href="https://shardingsphere.apache.org/elasticjob/current/css/featherlight.min.css?1603091282" rel="stylesheet">
<link href="https://shardingsphere.apache.org/elasticjob/current/css/perfect-scrollbar.min.css?1603091282" rel="stylesheet">
<link href="https://shardingsphere.apache.org/elasticjob/current/css/auto-complete.css?1603091282" rel="stylesheet">
<link href="https://shardingsphere.apache.org/elasticjob/current/css/theme.css?1603091282" rel="stylesheet">
<link href="https://shardingsphere.apache.org/elasticjob/current/css/hugo-theme.css?1603091282" rel="stylesheet">
<link href="https://shardingsphere.apache.org/elasticjob/current/css/theme-black.css?1603091282" rel="stylesheet">
<script src="https://shardingsphere.apache.org/elasticjob/current/js/jquery-2.x.min.js?1603091282"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
display:none !important;
}
</style>
</head>
<body class="" data-url="/en/user-manual/elasticjob-lite/usage/job-listener/listener-interface/">
<nav id="sidebar" class="">
<div id="header-wrapper">
<div id="header">
<img src="https://shardingsphere.apache.org/elasticjob/current/img/elasticjob.png" />
</div>
</div>
<div class="highlightable">
<ul class="topics">
<li data-nav-id="/en/overview/" title="Overview" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/overview/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>1. </b>Overview
</a>
</li>
<li data-nav-id="/en/quick-start/" title="Quick Start" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/quick-start/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>2. </b>Quick Start
</a>
<ul>
<li data-nav-id="/en/quick-start/elasticjob-lite/" title="ElasticJob-Lite" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/quick-start/elasticjob-lite/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>2.1. </b>ElasticJob-Lite
</a>
</li>
<li data-nav-id="/en/quick-start/elasticjob-cloud/" title="ElasticJob-Cloud" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/quick-start/elasticjob-cloud/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>2.2. </b>ElasticJob-Cloud
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/" title="Concepts &amp; Features" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/features/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3. </b>Concepts &amp; Features
</a>
<ul>
<li data-nav-id="/en/features/schedule-model/" title="Schedule Model" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/features/schedule-model/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.1. </b>Schedule Model
</a>
</li>
<li data-nav-id="/en/features/elastic/" title="Elastic Schedule" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/features/elastic/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.2. </b>Elastic Schedule
</a>
</li>
<li data-nav-id="/en/features/resource/" title="Resource Assign" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/features/resource/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.3. </b>Resource Assign
</a>
</li>
<li data-nav-id="/en/features/failover/" title="Failover" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/features/failover/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.4. </b>Failover
</a>
</li>
<li data-nav-id="/en/features/misfire/" title="Misfire" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/features/misfire/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.5. </b>Misfire
</a>
</li>
<li data-nav-id="/en/features/job-type/" title="Job Open Ecosystem" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/features/job-type/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.6. </b>Job Open Ecosystem
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/" title="User Manual" class="dd-item
parent
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4. </b>User Manual
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-lite/" title="ElasticJob-Lite" class="dd-item
parent
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.1. </b>ElasticJob-Lite
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/" title="Usage" class="dd-item
parent
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.1.1 </b>Usage
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/job-api/" title="Job API" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-api/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Job API
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/job-api/job-interface/" title="Job Development" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-api/job-interface/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Job Development
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/job-api/java-api/" title="Use Java API" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-api/java-api/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Java API
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/job-api/spring-boot-starter/" title="Use Spring Boot Starter" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-api/spring-boot-starter/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Spring Boot Starter
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/job-api/spring-namespace/" title="Use Spring Namespace" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-api/spring-namespace/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Spring Namespace
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/job-listener/" title="Job Listener" class="dd-item
parent
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-listener/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Job Listener
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/job-listener/listener-interface/" title="Listener Development" class="dd-item active">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-listener/listener-interface/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Listener Development
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/job-listener/java-api/" title="Use Java API" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-listener/java-api/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Java API
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/job-listener/spring-namespace/" title="Use Spring Namespace" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-listener/spring-namespace/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Spring Namespace
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/event-trace/" title="Event Trace" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/event-trace/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Event Trace
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/event-trace/java-api/" title="Use Java API" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/event-trace/java-api/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Java API
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/event-trace/spring-boot-starter/" title="Use Spring Boot Starter" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/event-trace/spring-boot-starter/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Spring Boot Starter
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/event-trace/spring-namespace/" title="Use Spring Namespace" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/event-trace/spring-namespace/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Spring Namespace
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/event-trace/table-structure/" title="Table Structure" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/event-trace/table-structure/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Table Structure
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/usage/operation-api/" title="Operation API" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/operation-api/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
Operation API
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/configuration/" title="Configuration" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/configuration/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.1.2 </b>Configuration
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-lite/configuration/java-api/" title="Java API" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/configuration/java-api/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Java API
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/configuration/spring-boot-starter/" title="Spring Boot Starter" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/configuration/spring-boot-starter/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Spring Boot Starter
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/configuration/spring-namespace/" title="Spring Namespace" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/configuration/spring-namespace/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Spring Namespace
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/configuration/built-in-strategy/" title="Built-in Strategy" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/configuration/built-in-strategy/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Built-in Strategy
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-lite/configuration/built-in-strategy/sharding/" title="Job Sharding Strategy" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/configuration/built-in-strategy/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Job Sharding Strategy
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/configuration/built-in-strategy/thread-pool/" title="Thread Pool Strategy" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/configuration/built-in-strategy/thread-pool/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Thread Pool Strategy
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/configuration/built-in-strategy/error-handler/" title="Error Handler Strategy" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/configuration/built-in-strategy/error-handler/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Error Handler Strategy
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/configuration/props/" title="Job Properties" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/configuration/props/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Job Properties
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/operation/" title="Operation" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/operation/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.1.3 </b>Operation
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-lite/operation/deploy-guide/" title="Deploy Guide" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/operation/deploy-guide/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Deploy Guide
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/operation/dump/" title="Dump Job Information" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/operation/dump/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Dump Job Information
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/operation/execution-monitor/" title="Execution Monitor" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/operation/execution-monitor/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Execution Monitor
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-lite/operation/web-console/" title="Console" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/operation/web-console/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Console
</a>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/elasticjob-cloud/" title="ElasticJob-Cloud" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-cloud/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.2. </b>ElasticJob-Cloud
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-cloud/usage/" title="Usage" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-cloud/usage/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.2.1. </b>Usage
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-cloud/usage/dev-guide/" title="Dev Guide" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-cloud/usage/dev-guide/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Dev Guide
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-cloud/usage/local-executor/" title="Local Executor" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-cloud/usage/local-executor/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Local Executor
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/elasticjob-cloud/configuration/" title="Configuration" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-cloud/configuration/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>4.2.2. </b>Configuration
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-cloud/operation/" title="Operation" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-cloud/operation/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.2.3. </b>Operation
</a>
<ul>
<li data-nav-id="/en/user-manual/elasticjob-cloud/operation/deploy-guide/" title="Deploy Guide" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-cloud/operation/deploy-guide/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Deploy Guide
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-cloud/operation/high-availability/" title="High Available" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-cloud/operation/high-availability/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
High Available
</a>
</li>
<li data-nav-id="/en/user-manual/elasticjob-cloud/operation/web-console/" title="Console" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-cloud/operation/web-console/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Console
</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/en/dev-manual/" title="Dev Manual" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/dev-manual/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>5. </b>Dev Manual
</a>
<ul>
<li data-nav-id="/en/dev-manual/sharding/" title="Job Sharding Strategy" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/dev-manual/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.1. </b>Job Sharding Strategy
</a>
</li>
<li data-nav-id="/en/dev-manual/thread-pool/" title="Thread Pool Strategy" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/dev-manual/thread-pool/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.2. </b>Thread Pool Strategy
</a>
</li>
<li data-nav-id="/en/dev-manual/error-handler/" title="Error Handler" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/dev-manual/error-handler/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.3. </b>Error Handler
</a>
</li>
<li data-nav-id="/en/dev-manual/job-class-provider/" title="Job Class Name Provider" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/dev-manual/job-class-provider/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.4. </b>Job Class Name Provider
</a>
</li>
<li data-nav-id="/en/dev-manual/roadmap/" title="Roadmap" class="dd-item ">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/dev-manual/roadmap/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.5. </b>Roadmap
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/downloads/" title="Downloads" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/downloads/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>6. </b>Downloads
</a>
</li>
<li data-nav-id="/en/powered-by/" title="Powered By" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/powered-by/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>7. </b>Powered By
</a>
</li>
<li data-nav-id="/en/faq/" title="FAQ" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/faq/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>8. </b>FAQ
</a>
</li>
<li data-nav-id="/en/blog/" title="Blog" class="dd-item
">
<a href="https://shardingsphere.apache.org/elasticjob/current/en/blog/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>9. </b>Blog
</a>
</li>
</ul>
<section id="prefooter">
<hr/>
<ul>
<li>
<a class="padding">
<i class="fa fa-fw fa-language"></i>
<div class="select-style">
<select id="select-language" onchange="location = this.value;">
<option id="en" value="/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-listener/listener-interface/" selected>English</option>
<option id="cn" value="/elasticjob/current/cn/user-manual/elasticjob-lite/usage/job-listener/listener-interface/">简体中文</option>
</select>
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="255px" height="255px" viewBox="0 0 255 255" style="enable-background:new 0 0 255 255;" xml:space="preserve">
<g>
<g id="arrow-drop-down">
<polygon points="0,63.75 127.5,191.25 255,63.75 " />
</g>
</g>
</svg>
</div>
</a>
</li>
</ul>
</section>
<hr />
<a class="padding" href="https://shardingsphere.apache.org/pdf/shardingsphere-elasticjob_docs_en.pdf">
<i class="fa fa-fw fa-file-pdf-o" ></i>&nbsp;Download PDF&nbsp;&nbsp;
</a>
<section id="footer">
<p></p>
</section>
</div>
</nav>
<section id="body">
<div id="overlay"></div>
<div class="padding highlightable">
<div>
<div id="top-bar">
<div id="top-github-link">
<a class="github-link" title='Edit this page' href="https://github.com/apache/shardingsphere/tree/master/docs/document/content/user-manual/elasticjob-lite/usage/job-listener/listener-interface.en.md" target="blank">
<i class="fa fa-code-fork"></i>
<span id="top-github-link-text">Edit this page</span>
</a>
</div>
<div id="breadcrumbs" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb">
<span id="sidebar-toggle-span">
<a href="#" id="sidebar-toggle" data-sidebar-toggle="">
<i class="fa fa-bars"></i>
</a>
</span>
<span class="links">
<a href='https://shardingsphere.apache.org/elasticjob/current/en/'>ElasticJob</a> > <a href='https://shardingsphere.apache.org/elasticjob/current/en/user-manual/'>User Manual</a> > <a href='https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/'>ElasticJob-Lite</a> > <a href='https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/'>Usage</a> > <a href='https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-listener/'>Job Listener</a> > Listener Development
</span>
</div>
</div>
</div>
<div id="chapter">
<div id="body-inner">
<nav id="TableOfContents">
<ul>
<li><a href="#common-listener">Common Listener</a></li>
<li><a href="#distributed-listener">Distributed Listener</a></li>
<li><a href="#add-spi-implementation">Add SPI implementation</a></li>
</ul>
</nav>
<h2 id="common-listener">Common Listener</h2>
<p>If the job processes the files of the job server and deletes the files after the processing is completed, consider using each node to perform the cleaning task.
This type of task is simple to implement, and there is no need to consider whether the global distributed task is completed. You should try to use this type of listener.</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-java" data-lang="java">
<span style="color:#66d9ef">public</span> <span style="color:#66d9ef">class</span> <span style="color:#a6e22e">MyJobListener</span> <span style="color:#66d9ef">implements</span> ElasticJobListener <span style="color:#f92672">{</span>
<span style="color:#a6e22e">@Override</span>
<span style="color:#66d9ef">public</span> <span style="color:#66d9ef">void</span> <span style="color:#a6e22e">beforeJobExecuted</span><span style="color:#f92672">(</span>ShardingContexts shardingContexts<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
<span style="color:#75715e">// do something ...
</span><span style="color:#75715e"></span> <span style="color:#f92672">}</span>
<span style="color:#a6e22e">@Override</span>
<span style="color:#66d9ef">public</span> <span style="color:#66d9ef">void</span> <span style="color:#a6e22e">afterJobExecuted</span><span style="color:#f92672">(</span>ShardingContexts shardingContexts<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
<span style="color:#75715e">// do something ...
</span><span style="color:#75715e"></span> <span style="color:#f92672">}</span>
<span style="color:#a6e22e">@Override</span>
<span style="color:#66d9ef">public</span> String <span style="color:#a6e22e">getType</span><span style="color:#f92672">()</span> <span style="color:#f92672">{</span>
<span style="color:#66d9ef">return</span> <span style="color:#e6db74">&#34;simpleJobListener&#34;</span><span style="color:#f92672">;</span>
<span style="color:#f92672">}</span>
<span style="color:#f92672">}</span>
</code></pre></div><h2 id="distributed-listener">Distributed Listener</h2>
<p>If the job processes database data, only one node needs to complete the data cleaning task after the processing is completed.
This type of task is complicated to process and needs to synchronize the status of the job in a distributed environment. Timeout settings are provided to avoid deadlocks caused by job out of sync. It should be used with caution.</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-java" data-lang="java">
<span style="color:#66d9ef">public</span> <span style="color:#66d9ef">class</span> <span style="color:#a6e22e">MyDistributeOnceJobListener</span> <span style="color:#66d9ef">extends</span> AbstractDistributeOnceElasticJobListener <span style="color:#f92672">{</span>
<span style="color:#66d9ef">public</span> <span style="color:#a6e22e">TestDistributeOnceElasticJobListener</span><span style="color:#f92672">(</span><span style="color:#66d9ef">long</span> startTimeoutMills<span style="color:#f92672">,</span> <span style="color:#66d9ef">long</span> completeTimeoutMills<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
<span style="color:#66d9ef">super</span><span style="color:#f92672">(</span>startTimeoutMills<span style="color:#f92672">,</span> completeTimeoutMills<span style="color:#f92672">);</span>
<span style="color:#f92672">}</span>
<span style="color:#a6e22e">@Override</span>
<span style="color:#66d9ef">public</span> <span style="color:#66d9ef">void</span> <span style="color:#a6e22e">doBeforeJobExecutedAtLastStarted</span><span style="color:#f92672">(</span>ShardingContexts shardingContexts<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
<span style="color:#75715e">// do something ...
</span><span style="color:#75715e"></span> <span style="color:#f92672">}</span>
<span style="color:#a6e22e">@Override</span>
<span style="color:#66d9ef">public</span> <span style="color:#66d9ef">void</span> <span style="color:#a6e22e">doAfterJobExecutedAtLastCompleted</span><span style="color:#f92672">(</span>ShardingContexts shardingContexts<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
<span style="color:#75715e">// do something ...
</span><span style="color:#75715e"></span> <span style="color:#f92672">}</span>
<span style="color:#a6e22e">@Override</span>
<span style="color:#66d9ef">public</span> String <span style="color:#a6e22e">getType</span><span style="color:#f92672">()</span> <span style="color:#f92672">{</span>
<span style="color:#66d9ef">return</span> <span style="color:#e6db74">&#34;distributeOnceJobListener&#34;</span><span style="color:#f92672">;</span>
<span style="color:#f92672">}</span>
<span style="color:#f92672">}</span>
</code></pre></div><h2 id="add-spi-implementation">Add SPI implementation</h2>
<p>Put JobListener implementation to module infra-common, resources/META-INF/services/org.apache.shardingsphere.elasticjob.infra.listener.ElasticJobListener</p>
<footer class=" footline" >
</footer>
</div>
</div>
</div>
<div id="navigation">
<a class="nav nav-prev" href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-listener/" title="Job Listener"> <i class="fa fa-chevron-left"></i></a>
<a class="nav nav-next" href="https://shardingsphere.apache.org/elasticjob/current/en/user-manual/elasticjob-lite/usage/job-listener/java-api/" title="Use Java API" style="margin-right: 0px;"><i class="fa fa-chevron-right"></i></a>
</div>
</section>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="https://shardingsphere.apache.org/elasticjob/current/js/clipboard.min.js?1603091282"></script>
<script src="https://shardingsphere.apache.org/elasticjob/current/js/perfect-scrollbar.min.js?1603091282"></script>
<script src="https://shardingsphere.apache.org/elasticjob/current/js/perfect-scrollbar.jquery.min.js?1603091282"></script>
<script src="https://shardingsphere.apache.org/elasticjob/current/js/jquery.sticky.js?1603091282"></script>
<script src="https://shardingsphere.apache.org/elasticjob/current/js/featherlight.min.js?1603091282"></script>
<script src="https://shardingsphere.apache.org/elasticjob/current/js/html5shiv-printshiv.min.js?1603091282"></script>
<script src="https://shardingsphere.apache.org/elasticjob/current/js/highlight.pack.js?1603091282"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="https://shardingsphere.apache.org/elasticjob/current/js/modernizr.custom.71422.js?1603091282"></script>
<script src="https://shardingsphere.apache.org/elasticjob/current/js/learn.js?1603091282"></script>
<script src="https://shardingsphere.apache.org/elasticjob/current/js/hugo-learn.js?1603091282"></script>
</body>
</html>