前言 首先,感谢大家对上一篇文章[业务可视化-让你的流程图"Run"起来(5.SpringBoot集成&微服务编排)]的支持. 分享一下近期我对这个项目的一些改进. 在项目中,经常会有一些批处理的定时任务需要配置,目前的java项目一般采用Spring-Batch来作为批处理的平台. 但是Spring-Batch在对Job流程(并行,分支,条件分支,合并等)的支持略显复杂臃肿. 尤其是流程可视化这方面几乎不支持. 所以,最近对ladybugflow做了改进,在天然支持可视化流程…
前言 首先,感谢大家对上一篇文章[业务可视化-让你的流程图"Run"起来]的支持. 分享一下近期我对这个项目的一些改进. 问题&改进 问题1: 流程运行开始后,异步执行,无法同步等待流程运行结束. 改进方法:修正后流程(黄色部分为修改点): 调用代码: // 异步调用(默认) flow.start(); // 或者 flow.start(false); // 同步调用 flow.start(true); 问题2: 工程需要自己下载编译,无法自动引用. 改进方法: 将代码发布到m…
前言 首先,感谢大家对上一篇文章[业务可视化-让你的流程图"Run"起来(2.问题与改进)]的支持. 分享一下近期我对这个项目的一些改进. 1. 增加了分支选择工程,可以根据节点的运行结果决定执行哪一个节点. 2. 增加了分布式运行节点功能,可以将流程节点部署到任意服务器,通过队列来调度节点,也就是说节点的运行将不在局限于Java语言. 1. 如何让流程图"Run"起来 首先我们回顾一下前两篇文章的知识,如何让流程图"Run"起来: 工程目录[…
前言 首先,感谢大家对上一篇文章[业务可视化-让你的流程图"Run"起来(3.分支选择&跨语言分布式运行节点)]的支持. 下面我以实际业务场景为例,来介绍一下ladybugflow的使用方法. 酒店预定场景(传统写法) 对于下面的酒店预定流程 流程1: 流程2 [流程1]的传统写法1: 定义流程间共享变量; 开始处理(); 查询客户信息处理(); 查询酒店信息处理(); 下单处理(); 下单成功处理(); 假设每个流程用3秒钟,整个流程执行完需要3*5=15秒. 于是衍生出了写…
前言 最近在研究业务可视化的问题,在日常的工作中,流程图和代码往往是分开管理的. 一个被维护多次的系统,到最后流程图和代码是否匹配这个都很难说. 于是一直有一个想法,让程序直接读流程图,根据流程图的配置来决定程序运行的顺序. 一转眼三年过去了,目前这个想法已经逐步落地实现变成代码. 问题 对于简单的流程 a -> b -> c 可以很容易用代码来实现 // 执行a a(); // 执行b b(); // 执行c c(); 对于并行的流程 a -> b a -> c 这个就要多线程框…
前言 感谢大家阅读本项目系列文章和对项目的支持.分享一下我对这个项目的新的改进. 之前项目做到了流程设计可视化和流程运行结果可视化. 本期发布的版本中实现了中间的运行过程的实时可视化,和流程状态持久化问题. 大家可以根据项目提供的接口自由扩展自己的工作流实现.和大家分享一下: 流程状态实时可视化 首先看效果: 1. 不需要交互的自动化流程 点击预定按钮,自动完成预定的流程. 2. 需要交互的向导式流程 每点击一个按钮,流程向前走一步. 实现方式 工程基于SpringBoot实现,代码发布到下面的…
在网上已经有跟多Bean的生命周期的博客,但是很多都是基于比较老的版本了,最近吧整个流程化成了一个流程图.待会儿使用流程图,说明以及代码的形式来说明整个声明周期的流程.注意因为代码比较多,这里的流程图只画出了大概的流程,具体的可以深入代码 一.获取Bea 第一阶段获取Bean 这里的流程图的入口在 AbstractBeanFactory类的 doGetBean方法,这里可以配合前面的 getBean方法分析文章进行阅读.主要流程就是 1.先处理Bean 的名称,因为如果以"&"…
Service中就需要用到 TransactionManager中的方法.提供set方法等着spring注入 这里面所有的操作都可以加上事物控制 其他的方法都是相同的操作 这里没有返回结果 转账的方法 查询的地方需要thorw异常.产生了异常,程序就不在执行 QueryRunner注入了Connection之后. 它就会从连接里面取.我现在不希望它从连接里面取 xml.这里注入connection就不需要了 但是当我们不提供connection对象的时候.我们dao里面的操作将没有connect…
请更新Spring Cloud的版本: <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Camden.SR7</version> <type>pom</type> <scope>import</s…
引言 Spring Batch是处理大量数据操作的一个框架,主要用来读取大量数据,然后进行一定的处理后输出指定的形式.比如我们可以将csv文件中的数据(数据量几百万甚至几千万都是没问题的)批处理插入保存到数据库中,就可以使用该框架,但是不管是数据资料还是网上资料,我看到很少有这样的详细讲解.所以本片博文的主要目的边讲解的同时边实战(其中的代码都是经过实践的).同样地先从Spring Boot对Batch框架的支持说起,最后一步一步进行代码实践! 一.Spring Boot对Batch框架的支持…