state-machine持久化踩坑
发表于|更新于
|浏览量:
植物借栽培而生育,人类借教育而成人。——罗素
今天使用spring-state-machine踩坑了,这里配了持久化,然后在事件里更改了额外数据
1 | gameInfo = stateMachine.getExtendedState().get(WordChainConst.GAME_INFO, GameInfo.class); |
结果在interceptor或者guard等其他地方使用的时候,却获取不到正确的值
原来在修改值后,还需要持久化保存一下。。。
1 | public class RedisSmPersister extends AbstractStateMachinePersister<StateEnum, EventEnum, String> |
1 | redisSmPersister.persist(sm, sm.getId()); |
相关推荐
2021-08-12
ActiveRecord
理想主义者是不可救药的:如果他被扔出了他的天堂,他会再制造出一个理想的地狱。——尼采 MybatisPlus支持ActiveRecord形式调用,实体类只需继承Model类即可进行强大的CRUD操作 效果如下: 12345678910111213141516171819202122232425262728293031323334import com.baomidou.mybatisplus.extension.activerecord.Model;import lombok.Data;import lombok.EqualsAndHashCode;import java.io.Serializable;@Data@Builder@ToString@Accessors@NoArgsConstructor@AllArgsConstructor@EqualsAndHashCode(callSuper = true)public class UserDetail extends Model<UserDetail> implements Serializable {...
2024-07-11
Mybatis在Mapper上加注解关闭一级缓存
正如自然忌讳真空一样,人类是讨厌平等的。——《我是猫》 MyBatis的一级缓存是SqlSession级别的缓存,默认是开启的。如果你想在查询时禁用一级缓存,可以使用@Options注解并将flushCache属性设置为true: 123456789101112import org.apache.ibatis.annotations.Options;import org.apache.ibatis.annotations.Select;import org.apache.ibatis.annotations.Mapper;@Mapperpublic interface MyMapper { @Select("SELECT * FROM my_table WHERE id = #{id}") @Options(flushCache = Options.FlushCachePolicy.TRUE) MyEntity selectById(int id);} 这样每次执行查询时,都会刷新缓存。
2024-04-12
mybatis-plus使用oceanbase-oracle模式
不用劳力而获得的东西,只有“贫困”。——莎士比亚 首先引入依赖 1234567891011<dependency> <groupId>com.oceanbase</groupId> <artifactId>oceanbase-client</artifactId> <version>最新版本</version> </dependency> <!-- mybatis-plus-boot-starter --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>最新版本</version> </dependency> 然后配置连接 1spring.datasource.url=jdbc:ocean...
2023-03-27
jackson配置某属性只允许反序列化但不允许序列化
多和朋辈交游无疑是医治心病的良方——泰戈尔 实现jackson转json时忽略某字段,但json转对象时支持该字段的方式很简单: 只需要在getter上加@JsonIgnore,在setter上加@JsonProperty即可 例如: 1234567891011private List<Long> ids;@JsonIgnorepublic List<Long> getIds(){ return ids;}@JsonPropertypublic void setIds(List<Long> ids){ this.ids = ids; } jackson文档:https://github.com/FasterXML/jackson-docs
2020-12-17
Springboot使用maven打包指定mainClass
“音乐是天使的演讲”,这句话形容得妙极。——(英国作家)卡莱尔 今天springboot项目install报错出现多个主类的问题,最后看这篇博客在pom.xml中指定了主类解决了 123456789101112131415161718<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <mainClass>com.xxx.XxxApplication</mainClass> </configuration> ...
2022-09-07
对接雅虎日语文本校对
青年时种下什么,老年时就收获什么——易卜生 API地址:https://developer.yahoo.co.jp/webapi/jlp/kousei/v2/kousei.html 代码: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758package com.ruben;import cn.hutool.core.map.MapUtil;import cn.hutool.core.text.CharPool;import cn.hutool.core.text.StrPool;import cn.hutool.http.HttpRequest;import cn.hutool.http.HttpUtil;import cn.hutool.json.JSONObject;import cn.hutool.json.JSONUtil;import cn.hutool.log.StaticLog;import cn....

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