当前位置: 首页 > wzjs >正文

石林彝族网站建设我想做卖鱼苗网站怎样做

石林彝族网站建设,我想做卖鱼苗网站怎样做,海力建设集团有限公司网站,传奇备案域名购买前言: 最近的做的功能和定时任务打交道比较多,所以这一期分享一下关于定时任务和Cron表达式的一些代码。 1、Cron表达式 cron 表达式是一个字符串,该字符串由7 部分组成,其中每部分代表不同的时间单位,例如&#xff…

前言:

最近的做的功能和定时任务打交道比较多,所以这一期分享一下关于定时任务和Cron表达式的一些代码。

1、Cron表达式

cron 表达式是一个字符串,该字符串由7 部分组成,其中每部分代表不同的时间单位,例如:

 [秒] [分] [时] [日] [月] [周] [年]

1、1 组成部分 

通常年的部分可以省略,常用的是前6部分:

字段范围值可包含特殊字符
秒(Seconds)0-59正整数* / - 
分(Minutes)0-59正整数* / -
时(Hours)0-59正整数* / -
日(DayOfMonth)1-31正整数* / - ?
月(Month)1-12正整数* / -
周(DayOfWeek)1-7正整数(每周几)* / - ?
年(Year)1970-2099正整数* / -

1、2 Cron通配符

(1)* :表示匹配该域的任意值,可解读为 “每”。

(2)?:标识不指定和值,只能在[日]和[周]使用,即不关心每周二是几号或者每8号是周几。

(3)- :表示该域的连续范围。例如在[分]部分使用时,5-20则表示从5分到20分钟每分钟触发一次 。

(4)/ :该符号代表步长,用于指定时间间隔或频率。例如:在分*/5和2/5表示每5分钟执行一次和从第2分钟开始,每5分钟执行一次。

(5), :表示匹配该域的指定值。例如在[分]使用8,12,35则表示分别在第 8 分、第 12 分、 第 35 分执行该定时任务。

1、3 Cron表达式下次执行时间

import org.redisson.executor.CronExpression;
// 或者
import org.quartz.CronExpression;String cron = "xxxxx";try {CronExpression cronExpression = new CronExpression(cron);//导包import org.quartz.CronExpression;Date date = cronExpression.getTimeAfter(new Date());} catch (Exception e) {log.error("cron获取下次执行时间异常!", e);}

1、4 定时任务(xxlJobAdminApi)

/***xxl-job-admin Feign接口类*  https://github.com/xuxueli/xxl-job* 配置备份时需要动态添加定时任务* 封装对外接口文档,便于动态管理定时任务*/
@FeignClient( name = "xxl-job",  url="${xxl.job.admin.addresses}"
public interface IXxlJobInfoClient {String API_PREFIX = "/job/feign";/*** page list** @param start           开始页* @param length          每页长度* @param jobGroup        分组* @param jobDesc         job描述* @param executorHandler 执行器* @param author          创建人* @param triggerStatus   triggerStatus* @return 执行结果*/@GetMapping(API_PREFIX + "/pageList")Map<String, Object> pageList(@RequestParam("start") int start, @RequestParam("length") int length,@RequestParam("jobGroup") int jobGroup, @RequestParam("triggerStatus") int triggerStatus,@RequestParam("jobDesc") String jobDesc, @RequestParam("executorHandler") String executorHandler,@RequestParam("author") String author);/*** get a job** @param id id* @return 执行结果*/@GetMapping(API_PREFIX + "/user-info-by-id")ReturnT<XxlJobInfo> loadById(@RequestParam("id") Integer id);/*** get info by group id** @param groupId groupId* @return 结果*/@GetMapping(API_PREFIX + "/user-info-by-group-id")ReturnT<List<XxlJobInfo>> loadByGroupId(@RequestParam("groupId") Integer groupId);/*** add job** @param jobInfo 定时任务与信息* @return 执行结果*/@PostMapping(API_PREFIX + "/add")ReturnT<String> add(@RequestBody XxlJobInfo jobInfo);/*** update job** @param jobInfo 定时任务信息* @return 执行结果*/@PutMapping(API_PREFIX + "/update")ReturnT<String> update(@RequestBody XxlJobInfo jobInfo);/*** remove job* *** @param id ID* @return 执行结果*/@DeleteMapping(API_PREFIX + "/remove")ReturnT<String> remove(@RequestParam("id") int id);/*** start job** @param id ID* @return 执行结果*/@PostMapping(API_PREFIX + "/start")ReturnT<String> start(@RequestParam("id") int id);/*** stop job** @param id ID* @return 执行结果*/@PostMapping(API_PREFIX + "/stop")ReturnT<String> stop(@RequestParam("id") int id);/*** 根据id触发任务** @param id ID* @return 执行结果*/@PostMapping(API_PREFIX + "/manual/trigger")ReturnT<String> manualTrigger(@RequestParam("id") int id);}

1、5 对应实体:

import lombok.Data;/*** 定时任务实体**/
@Data
public class XxlJobInfo {private int id;				// 主键IDprivate int jobGroup;		// 执行器主键IDprivate String jobDesc;private Date addTime;private Date updateTime;private String author;		// 负责人private String alarmEmail;	// 报警邮件private String scheduleType;			// 调度类型private String scheduleConf;			// 调度配置,值含义取决于调度类型private String misfireStrategy;			// 调度过期策略private String executorRouteStrategy;	// 执行器路由策略private String executorHandler;		    // 执行器,任务Handler名称private String executorParam;		    // 执行器,任务参数private String executorBlockStrategy;	// 阻塞处理策略private int executorTimeout;     		// 任务执行超时时间,单位秒private int executorFailRetryCount;		// 失败重试次数private String glueType;		// GLUE类型	#com.xxl.job.core.glue.GlueTypeEnumprivate String glueSource;		// GLUE源代码private String glueRemark;		// GLUE备注private Date glueUpdatetime;	// GLUE更新时间private String childJobId;		// 子任务ID,多个逗号分隔private int triggerStatus;		// 调度状态:0-停止,1-运行private long triggerLastTime;	// 上次调度时间private long triggerNextTime;	// 下次调度时间
}

1、6工具类:

public class XxlJobUtil {private XxlJobUtil() {// do nothing}/*** cron默认参数设置** @param jobAuthor       任务归属人* @param jobDesc         任务描述* @param scheduleConf    cron表达式格式:"0 0/15 * * * ? *"* @param executorHandler 任务之执行器名字,和@XxlJob注解参数一致* @param executorParam   任务执行器执行需要的参数,在执行器中通过XxlJobHelper.getJobParam();获取* @return XxlJobInfo*/public static XxlJobInfo defaultCronJobInfo(String jobAuthor, String jobDesc, String scheduleConf,String executorHandler,String executorParam) {XxlJobInfo xxlJobInfo = new XxlJobInfo();xxlJobInfo.setAuthor(jobAuthor);xxlJobInfo.setJobDesc(jobDesc);// 调度策略设置xxlJobInfo.setScheduleType(JobConst.SCHEDULE_TYPE_CRON);// 格式"0 0/15 * * * ? *"xxlJobInfo.setScheduleConf(scheduleConf);// EXECUTE参数xxlJobInfo.setExecutorRouteStrategy(JobConst.EXECUTOR_ROUTE_STRATEGY);xxlJobInfo.setExecutorBlockStrategy(JobConst.EXECUTOR_BLOCK_STRATEGY);xxlJobInfo.setExecutorFailRetryCount(JobConst.EXECUTOR_FAIL_RETRY_COUNT);xxlJobInfo.setExecutorTimeout(JobConst.EXECUTOR_TIMEOUT);// 任务调度@XxlJob注解的参数一致xxlJobInfo.setExecutorHandler(executorHandler);// @XxlJob注解方法需要用到的参数通过:XxlJobHelper.getJobParam(); 获取xxlJobInfo.setExecutorParam(executorParam);// 调度过期策略xxlJobInfo.setMisfireStrategy(JobConst.MISFIRE_STRATEGY_DO_NOTHING);// GLUE 策略xxlJobInfo.setGlueRemark(JobConst.GLUE_REMARK);xxlJobInfo.setGlueType(JobConst.GLUE_TYPE);xxlJobInfo.setGlueSource(JobConst.GLUE_SOURCE);// jobGroup执行器 需要核对具体的执行器xxlJobInfo.setJobGroup(1);return xxlJobInfo;}}


文章转载自:

http://z0R2LcdM.krnzm.cn
http://uTLGhv6r.krnzm.cn
http://KuNXk2u3.krnzm.cn
http://Emaf8R5D.krnzm.cn
http://NTHqXil2.krnzm.cn
http://9LyBprU3.krnzm.cn
http://VGSUu1cg.krnzm.cn
http://hroPvhng.krnzm.cn
http://0EQQHs3I.krnzm.cn
http://c9czbM7y.krnzm.cn
http://NdzZCbWy.krnzm.cn
http://zWuFIgBo.krnzm.cn
http://1k3Rz9dB.krnzm.cn
http://ACqnfWRq.krnzm.cn
http://YDm5oeez.krnzm.cn
http://K2VUqe8e.krnzm.cn
http://Llgm1VRf.krnzm.cn
http://NpZvqHt3.krnzm.cn
http://U1S3kVvy.krnzm.cn
http://BebCem4D.krnzm.cn
http://subBeSu1.krnzm.cn
http://gGaKZGfs.krnzm.cn
http://9FG9ujBs.krnzm.cn
http://enNmZpSm.krnzm.cn
http://fa0PxII6.krnzm.cn
http://fDcKxcUU.krnzm.cn
http://gRYBNdJW.krnzm.cn
http://cLtMU2DC.krnzm.cn
http://QdTqMOqC.krnzm.cn
http://yGiTBOmn.krnzm.cn
http://www.dtcms.com/wzjs/735630.html

相关文章:

  • 帮非法集资公司做网站违法吗珠海网站建设在哪里
  • 网站建设四川冠辰做系统去哪个网站好
  • 什么信息发布型网站如何登陆工商局网站做变更
  • 做fpga的网站wordpress 添加设置
  • 黄山网站建设找哪家服装网站建设公司有哪些
  • 手机网站设计公司网站建设费用报告
  • dedecms网站地图调用广州公司注册需要哪些资料
  • 北京做兼职从哪个网站好微信管理系统免费版
  • 制作彩票网站需要多少钱网站后台难做吗
  • 网站管理功能图景区网站建设方案 费用
  • 工信局网站备案查询高质量的南京网站建设
  • 2019做哪个网站赚钱网站建设 焦作
  • 山东青岛网站建设那些网站可以做兼职
  • 手机是使用wordpressseo关于网站搜索排名关键词的标准评定
  • 百度站长工具查询人力资源劳务派遣公司
  • 郑州本地做团购的网站企业网站建设效果
  • 新乡手机网站建设官网仙侠手游代理平台
  • 简单大气网站欣赏纹身网站设计
  • 打开部分网站很慢电子商务网站建设与管理期末答案
  • 自建网站服务器wordpress伪静态结构
  • 建设银行网站链接网站如何做跳板
  • 网站怎么推广比较好免费网站如何做推广方案
  • 免费做网站网站有人哪些了解网站建设
  • 网站用模板为什么不利于seo推广重庆高端网站设计公司
  • 衡水住房和城乡建设局网站线上商城app
  • 青岛网站制作套餐wordpress id3
  • 淘宝客网站做的好的办公室装修会计分录
  • Wordpress外贸网站搭建公司长沙中小企业有哪些公司
  • 如何做自己的论坛网站天津网站网站建设
  • 厦门有设计网站的吗东莞网站排名推广