spring-state-machine的action踩坑
发表于|更新于
|浏览量:
善则称人,过则称己,则民不争。——佚名
今天在状态机的action里进行事件触发,发现并没有触发
这是因为在action触发后,state才会进行更改,而不是在state触发后。。。
例如此处我们在action的execute打断点:

可以看到还没有更改状态
如果需要在state触发以后紧接着触发event,则可以放到拦截器里spring-state-machine拦截器处理
相关推荐
2024-06-24
MybatisPlus自动填充忽略存在值直接填充
再也无需前思后想,一切岂非已然过往。——《且听风吟》 代码如下,主要是重写strictFillStrategy方法 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576import cn.dev33.satoken.stp.StpUtil;import cn.hutool.core.lang.Opt;import com.baomidou.mybatisplus.core.MybatisConfiguration;import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;import com.baomidou.mybatisplus.core.handlers.StrictFill;import com.baomidou.mybatisplus.extension.plugin...
2023-08-31
binlog4j
敢同恶鬼争高下,不向霸王让寸分。――毛泽东《七律庆祝第二次核试验成功》 分享一个基 于 Java 轻 量 级 的 Mysql (Mariadb) Binlog 客 户 端 binlog4j: 基 于 Java 轻 量 级 的 Mysql (Mariadb) Binlog 客 户 端 集群模式, 通过集群部署的方式,保证服务高可用。 宕机续读, 避免宕机期间造成数据丢失。 数据转换, 基于泛型封装 binlog Event 的序列化数据。 兼容 传统项目 与 Spring Boot / Cloud 项目。 兼容 Spring Boot 2.x 与 Spring Boot 3.x 版本。 下载安装12345<dependency> <groupId>com.gitee.Jmysy</groupId> <artifactId>binlog4j-core</artifactId> <version>latest.version</version></depen...
2023-03-03
flowlong
真正的科学家应该是个幻想家,谁不是幻想家,谁就只能把自己称为实践家——巴尔扎克 分享一个工作流框架:https://gitee.com/aizuda/flowlong FlowLong 飞龙 工作流 特别说明 flowlong 是基于 snakerflow 重构的 更适合中国人的国产工作流引擎 。 名字由来 snakerflow 蛇 (重构进化) flowlong 龙 中文名 飞龙 在天美好愿景!
2023-12-19
state-machine持久化踩坑
植物借栽培而生育,人类借教育而成人。——罗素 今天使用spring-state-machine踩坑了,这里配了持久化,然后在事件里更改了额外数据 12gameInfo = stateMachine.getExtendedState().get(WordChainConst.GAME_INFO, GameInfo.class);gameInfo.setXxx(xxx); 结果在interceptor或者guard等其他地方使用的时候,却获取不到正确的值 原来在修改值后,还需要持久化保存一下。。。 1public class RedisSmPersister extends AbstractStateMachinePersister<StateEnum, EventEnum, String> 1redisSmPersister.persist(sm, sm.getId());
2024-08-29
jps、jstack查看java堆栈信息
宿命论是那些缺乏意志力的弱者的借口。——罗曼·罗兰 jps查看进程信息命令如下: 12345678Github-Id-VampireAchao:shenyu achao$ jps -l27312 jdk.jcmd/sun.tools.jps.Jps88929 27268 org.jetbrains.jps.cmdline.Launcher27269 org.apache.shenyu.examples.http.ShenyuTestSwaggerApplication19815 com.intellij.idea.Main27175 org.jetbrains.idea.maven.server.RemoteMavenServer3624237 org.sonarsource.sonarlint.core.backend.cli.SonarLintServerCli 然后用jstack查看堆栈信息: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484...
2020-07-27
jenkins配置Maven
下载Maven 3.6.3并且上传到centos7 123456#解压tar -zxvf apache-maven-3.6.3-bin.tar.gz #建立目录mkdir /opt/maven#移动mv apache-maven-3.6.3/* /opt/maven/ 最后就是这样 配置环境变量 1234567vim /etc/profile#到最下面追加环境变量export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdkexport MAVEN_HOME=/opt/mavenexport PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin#使环境变量生效source /etc/profile 最后输入 12#查看maven版本mvn -version 就是这个样子 我们回到Jenkins 找到Global Tool Configuration 开始配置JDK 配置Maven 然后保存,到我们的系统配置 配置jenkins用到的环境变量 123456JAVA_HOME/usr/lib/jvm/...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog