- 一、前情回顾在04篇中,我们用代码的形式控制了一个简单的绩效流程的运转,并且基本熟悉了流程运行过程中涉及到的相关表。让我们继续回到这个简单的绩效流程,它依然是有所欠缺的,比如在实际业务场景中,我们在绩效的每个环节都应该有个分数,但目前我们只是指派个人去完成各个节点,并没有输入分数和保存分数的步骤。因此,在今天的文章中,我们将使用Flowable包含的流程变量来管理流程中的自定义数据。 二、... 一、前情回顾在04篇中,我们用代码的形式控制了一个简单的绩效流程的运转,并且基本熟悉了流程运行过程中涉及到的相关表。让我们继续回到这个简单的绩效流程,它依然是有所欠缺的,比如在实际业务场景中,我们在绩效的每个环节都应该有个分数,但目前我们只是指派个人去完成各个节点,并没有输入分数和保存分数的步骤。因此,在今天的文章中,我们将使用Flowable包含的流程变量来管理流程中的自定义数据。 二、...
- 一、前情回顾在03篇中,我用Flowable-UI绘制了一个简单的绩效流程并在官方的demo中跑完了整个流程,加深了各位读者对于一个流程中包含的一些基础概念加深了认识,并且在这个过程里也渗透了一些可以应用的知识点。但我们也能想到,在实际业务中我们是要靠后端的接口去控制流程的流转,而不能靠Flowable-UI去控制。因此,本篇文章就是带领读者使用Flowable的Java Api去控制流程... 一、前情回顾在03篇中,我用Flowable-UI绘制了一个简单的绩效流程并在官方的demo中跑完了整个流程,加深了各位读者对于一个流程中包含的一些基础概念加深了认识,并且在这个过程里也渗透了一些可以应用的知识点。但我们也能想到,在实际业务中我们是要靠后端的接口去控制流程的流转,而不能靠Flowable-UI去控制。因此,本篇文章就是带领读者使用Flowable的Java Api去控制流程...
- 一、前置准备对于第一次使用Flowable,我们先采用官方提供的flowable-ui进行模型的绘制,让各位读者可以感受到整个流程的运行变化,从而在后期的编码中不会感到迷惑,这也是我本次选择使用7.0版本以下的flowable的原因(前文提过:官方将7.0以上的版本已经移除flowable-ui)。 1.启动flowable-ui将下载的压缩包中的flowable-ui的war包解压出来。... 一、前置准备对于第一次使用Flowable,我们先采用官方提供的flowable-ui进行模型的绘制,让各位读者可以感受到整个流程的运行变化,从而在后期的编码中不会感到迷惑,这也是我本次选择使用7.0版本以下的flowable的原因(前文提过:官方将7.0以上的版本已经移除flowable-ui)。 1.启动flowable-ui将下载的压缩包中的flowable-ui的war包解压出来。...
- 一、版本选择在我们正式建立项目前,我们先去flowable的github主页了解一下版本信息,flowable版本上大的区别主要以7.0.X版本作为界线,通过官方的版本说明我们知道7.0版本主要对JDK17和SpringBoot3做了支持,所以各位读者在选择版本的时候要根据自己项目目前Spring和JDK的版本进行选择,如果是非SpringBoot3.X的版本就使用Flowable7.0.... 一、版本选择在我们正式建立项目前,我们先去flowable的github主页了解一下版本信息,flowable版本上大的区别主要以7.0.X版本作为界线,通过官方的版本说明我们知道7.0版本主要对JDK17和SpringBoot3做了支持,所以各位读者在选择版本的时候要根据自己项目目前Spring和JDK的版本进行选择,如果是非SpringBoot3.X的版本就使用Flowable7.0....
- 一、认识工作流 1.认识BPM与BPMN如果我们翻阅Flowable的文档,可以看到对于它会有一段这样的描述-“可用于部署BPMN2.0流程定义”,那么BPMN2.0又是个什么东东呢?下面我们简单介绍一下。要知道BPMN2.0是什么,我们需要先了解下BPM(Business Process Management,业务流程管理)。它说白了就是一种管理方法,或者说是一种思想,主要是用来管理业务... 一、认识工作流 1.认识BPM与BPMN如果我们翻阅Flowable的文档,可以看到对于它会有一段这样的描述-“可用于部署BPMN2.0流程定义”,那么BPMN2.0又是个什么东东呢?下面我们简单介绍一下。要知道BPMN2.0是什么,我们需要先了解下BPM(Business Process Management,业务流程管理)。它说白了就是一种管理方法,或者说是一种思想,主要是用来管理业务...
- 最近想在自己的一个项目里接入chatGPT实现AI对话助手,但是调研了一下Open AI提供的服务在国内不好用,需要搭代理,而且还有封号的风险。于是在寻找别的方案时发现了微软也提供了相应的服务,并且国内可用,而且响应速度还是挺快的。 一、注册账号、申请服务以及部署模型通过Azure官网操作即可,详细步骤站内已经有大佬出过博客了,大家自行搜索查看即可,本篇文章主要讲解怎么基于SpringBoo... 最近想在自己的一个项目里接入chatGPT实现AI对话助手,但是调研了一下Open AI提供的服务在国内不好用,需要搭代理,而且还有封号的风险。于是在寻找别的方案时发现了微软也提供了相应的服务,并且国内可用,而且响应速度还是挺快的。 一、注册账号、申请服务以及部署模型通过Azure官网操作即可,详细步骤站内已经有大佬出过博客了,大家自行搜索查看即可,本篇文章主要讲解怎么基于SpringBoo...
- 引子上周完结了自己入职以来的第一个预研任务,关于项目未来会全面拆分,又因为接口之间存在很多调用关系,因此在拆分服务后需要采用RPC调用,因此决定引入gRPC,也就诞生了这篇踩坑回顾文章。 一、SpringBoot3.0暂不支持当时需求提的是项目想升到SpringBoot3.0,因此对于版本这里我就没给予重视,满腔热血地打开Github,搜索了相关starter,然后引入到了项目中,光速仿写... 引子上周完结了自己入职以来的第一个预研任务,关于项目未来会全面拆分,又因为接口之间存在很多调用关系,因此在拆分服务后需要采用RPC调用,因此决定引入gRPC,也就诞生了这篇踩坑回顾文章。 一、SpringBoot3.0暂不支持当时需求提的是项目想升到SpringBoot3.0,因此对于版本这里我就没给予重视,满腔热血地打开Github,搜索了相关starter,然后引入到了项目中,光速仿写...
- 在实际业务场景中,我们可能会碰到需要短时间批量执行的定时任务,此时如果我们不做任何处理,只是像前面那样去执行,可能出现上一批的任务还没执行完,定时的时间就到了,那么势必会对业务产生影响,所以就需要我们对批量任务进行分片处理,本节就让我们看看Xxl-job如何做分片处理。 一、环境准备 1.mock数据首先在数据库里建一个测试的表,并mock一些数据进去,模拟业务中的“大表”。因为本身就是在模... 在实际业务场景中,我们可能会碰到需要短时间批量执行的定时任务,此时如果我们不做任何处理,只是像前面那样去执行,可能出现上一批的任务还没执行完,定时的时间就到了,那么势必会对业务产生影响,所以就需要我们对批量任务进行分片处理,本节就让我们看看Xxl-job如何做分片处理。 一、环境准备 1.mock数据首先在数据库里建一个测试的表,并mock一些数据进去,模拟业务中的“大表”。因为本身就是在模...
- 在上节中,我们成功地配置了执行器并且执行了我们设定的定时任务。在本节中,将带大家感受下XXL-JOB的一个特别的运行模式-GLUE模式以及感受下集群模式下的不同路由策略。 一、什么是GLUE模式?我们先来回顾下我们现在的定时任务是怎么应用的,我们先在调度中心里配置个任务,接着在项目里对需要定时执行的方法加上XXL-JOB的注解,也就是说我们如果现在需要对某个方法改成定时任务是需要重新发版部署... 在上节中,我们成功地配置了执行器并且执行了我们设定的定时任务。在本节中,将带大家感受下XXL-JOB的一个特别的运行模式-GLUE模式以及感受下集群模式下的不同路由策略。 一、什么是GLUE模式?我们先来回顾下我们现在的定时任务是怎么应用的,我们先在调度中心里配置个任务,接着在项目里对需要定时执行的方法加上XXL-JOB的注解,也就是说我们如果现在需要对某个方法改成定时任务是需要重新发版部署...
- 在上节中,我们部署了调度中心,并且认识了调度中心,那么让它与我们的项目相结合呢?就需要用到“执行器”,通过调度中心配置的“执行器”,再在我们的项目里使用,就可以实现定时任务的控制了。 一、新建项目要使用执行器,一方面要在调度中心里配置,另一方面就需要在项目中使用了,所以我们先新建一个SpringBoot的项目,如下:输入项目的基本信息后引入依赖,这里只是个简单demo,所以导入个Spring... 在上节中,我们部署了调度中心,并且认识了调度中心,那么让它与我们的项目相结合呢?就需要用到“执行器”,通过调度中心配置的“执行器”,再在我们的项目里使用,就可以实现定时任务的控制了。 一、新建项目要使用执行器,一方面要在调度中心里配置,另一方面就需要在项目中使用了,所以我们先新建一个SpringBoot的项目,如下:输入项目的基本信息后引入依赖,这里只是个简单demo,所以导入个Spring...
- 一、获取源码使用的第一步自然就是获取源码,这里我分别贴出Github的地址:https://github.com/xuxueli/xxl-job/ 和Gitee的地址:https://gitee.com/xuxueli0323/xxl-job ,我使用Github去下载,如图: 二、初始化数据库下载源码下来之后,要不用着急启动项目,在源码目录下的 \doc\db可以看到tables_xxl... 一、获取源码使用的第一步自然就是获取源码,这里我分别贴出Github的地址:https://github.com/xuxueli/xxl-job/ 和Gitee的地址:https://gitee.com/xuxueli0323/xxl-job ,我使用Github去下载,如图: 二、初始化数据库下载源码下来之后,要不用着急启动项目,在源码目录下的 \doc\db可以看到tables_xxl...
- 一、什么是XXL-JOB?先来看看官方文档的定义:XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。先来理解一下任务调度:就是在一个约定的特定时刻去执行任务的过程。举一个常见的场景:银行需要在每个用户的信用卡还款日前3天发送短信通知。而任务调度平台则可以让我们对这些任务进行统一的管理,比如开启或关闭... 一、什么是XXL-JOB?先来看看官方文档的定义:XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。先来理解一下任务调度:就是在一个约定的特定时刻去执行任务的过程。举一个常见的场景:银行需要在每个用户的信用卡还款日前3天发送短信通知。而任务调度平台则可以让我们对这些任务进行统一的管理,比如开启或关闭...
- 引言在现代高并发场景下,Spring Boot应用的性能瓶颈往往出现在同步阻塞操作中。通过异步处理和任务调度技术,可实现请求响应时间降低40%-70%,同时提升系统吞吐量。技术背景异步处理:基于@Async注解的线程池任务委派,避免主线程阻塞任务调度:通过@Scheduled实现定时任务,支持cron表达式与固定速率触发核心特性对比技术延迟水平适用场景资源消耗异步处理毫秒级短耗时任务(<1s... 引言在现代高并发场景下,Spring Boot应用的性能瓶颈往往出现在同步阻塞操作中。通过异步处理和任务调度技术,可实现请求响应时间降低40%-70%,同时提升系统吞吐量。技术背景异步处理:基于@Async注解的线程池任务委派,避免主线程阻塞任务调度:通过@Scheduled实现定时任务,支持cron表达式与固定速率触发核心特性对比技术延迟水平适用场景资源消耗异步处理毫秒级短耗时任务(<1s...
- 本篇 Huazie 带大家一起分析了 Spring Boot 中预置的 ApplicationContext 初始化器实现,然后自定义了一个应用上下文初始化器实现类,进一步加深了对 Spring Boot 初始化应用上下文过程的了解,为后续的启动运行过程的理解打下了坚实的基础。 本篇 Huazie 带大家一起分析了 Spring Boot 中预置的 ApplicationContext 初始化器实现,然后自定义了一个应用上下文初始化器实现类,进一步加深了对 Spring Boot 初始化应用上下文过程的了解,为后续的启动运行过程的理解打下了坚实的基础。
- 在Spring Boot中使用MyBatis时,可以通过在application.properties文件中配置日志相关的属性来打印SQL日志、参数以及执行结果等信息。以下是具体的配置项和说明: 1. 配置MyBatis日志级别MyBatis的日志输出依赖于底层日志框架(如Logback、Log4j2等)。首先需要确保项目中已引入相应的日志依赖(Spring Boot默认使用Logback)... 在Spring Boot中使用MyBatis时,可以通过在application.properties文件中配置日志相关的属性来打印SQL日志、参数以及执行结果等信息。以下是具体的配置项和说明: 1. 配置MyBatis日志级别MyBatis的日志输出依赖于底层日志框架(如Logback、Log4j2等)。首先需要确保项目中已引入相应的日志依赖(Spring Boot默认使用Logback)...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签