go语言基于Gin集成后台管理系统开发定时任务管理cron/v3好用又好看

系统目前是支持两种定时类型,一种是函数类型,一种是接口类型,来支持多样的业务;时间周期可视化选择,方便设定执行周期。框架UI漂亮,添加管理定时任务设置简单,客户都可以做自己调整执行时间周期,直观的执行日志,下面我们一起框体验吧!

一、在线体验和获取代码地址

立即体验

去获取代码

二、截图效果

三、使用

HttpJob 接口类型

任务类型选择:访问URL。

接口类型是比较简单的,在系统中配置好调用的接口地址(访问的url地址)、调用周期即可;

ExecJob 函数类型

任务类型选择:调用函数。

函数类型是需要使用代码来完成的业务,这个时候我们需要使用函数类型;

系统中给出了一个示例:

cronjob目录中可以看到examples.go的文件,这里边是给出的一个示例代码;

下面我们针对示例代码做一下介绍:

第一步:需要创建一个结构体,这个结构体需要实现JobCore接口;如:ExamplesOne,里边实现了Exec方法;

Go 复制代码
type ExamplesOne struct{}

func (t ExamplesOne) Exec(arg interface{}) error {
    str := time.Now().Format(timeFormat) + " [INFO] JobCore ExamplesOne exec success"
    // TODO: 这里需要注意 Examples 传入参数是 string 所以 arg.(string);请根据对应的类型进行转化;
    switch arg.(type) {
    case string:
        if arg.(string) != "" {
            fmt.Println("函数参数:", arg.(string))
            fmt.Println("函数执行了:", str, arg.(string))
        } else {
            fmt.Println("arg is nil")
            fmt.Println("函数执行了:", str, "arg is nil")
        }
        break
    }
    return nil
}

第二步:需要在jobbase.go下的InitJob中注册这个结构体;如:ExamplesOne;需要将结构体的名称作为key,结构体作为value;这样重新启动项目,就可以在系统中进行配置并使用了;

Go 复制代码
func InitJob() {
    jobList = map[string]JobsExec{
        "ExamplesOne": ExamplesOne{},
        // ...
    }
}
相关推荐
小红帽2.01 天前
GOFLY开源客服系统-处理gin框架下的session中间件
中间件·gin
小红帽2.02 天前
从零搭建客服系统:我是如何用Gin实现页面路由与模板渲染的
gin
戎码江湖2 天前
使用CI/CD部署后端项目(gin)
ci/cd·golang·gin·后端自动部署项目·自动化部署项目
计时开始不睡觉5 天前
从 @Schedule 到 XXL-JOB:分布式定时任务的演进与实践
java·分布式·spring·xxl-job·定时任务
夏沫mds10 天前
【基于hyperledger fabric的教育证书管理系统】
运维·go·vue·区块链·gin·fabric
水墨熊猫10 天前
【FIX】go运行报错“missing go.sum entry for module providing package”解决方案
golang·gin
用户895356032822013 天前
告别重复,用Go泛型精简Gin代码
后端·gin
水痕0122 天前
gin结合minio来做文件存储
java·eureka·gin
摘星编程23 天前
Docker容器定时任务时区Bug导致业务异常的环境变量配置解决方案
环境变量·定时任务·docker容器·时区配置·生产环境
一心09223 天前
tomcat 定时重启
运维·tomcat·定时任务