quartz工具类含倒计时
一个人有无成就,决定于他青年时期是不是有志气。——谢觉哉 分享一个自己写的Quartz工具类,可以轻松实现倒计时功能: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778import cn.hutool.core.date.DateUtil;import lombok.SneakyThrows;import lombok.experimental.UtilityClass;import org.dromara.streamquery.stream.core.collection.Lists;import org.quartz.*;import org.quartz.core.jmx.JobDataMapSupport;import org.quartz.impl.StdSchedulerFactory;import org.quart...
spring-doc报错Unable to render this definition
心情愉快是肉体和精神的最佳卫生法。——乔治·桑 原因:自己修改了ByteArrayHttpMessageConverter的顺序。。。 解决方案: OpenAPI 3 Library for spring-boot 13.79. Why am i getting an error: Swagger UI unable to render definition, when overriding the default spring registered HttpMessageConverter?When overriding the default spring-boot registered HttpMessageConverter, you should have ByteArrayHttpMessageConverter registered as well to have proper springdoc-openapi support. 12converters.add(new ByteArrayHttpMessageConverter());converters...
动态范围匹配逻辑实现
生活的全部意义在于无穷地探索尚未知道的东西,在于不断地增加更多的知识。——左拉 分享一个动态范围匹配逻辑的实现 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821...
node-sass版本适配问题
一个人几乎可以在任何他怀有无限热忱的事情上成功。 ——查尔斯·史考伯 今天发现node14安装不上node-sass 原来是有个更新日志对照表,针对mac,版本号对照如下: https://github.com/sass/node-sass/releases/tag/v4.14.1 Community Add GitHub Actions for Alpine CI (@nschonni, #2823) Fixes Bump sass-graph@2.2.5 (@xzyfer, #2912) Supported Environments OS Architecture Node Windows x86 & x64 0.10, 0.12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 OSX x64 0.10, 0.12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 Linux* x86 & x64 0.10, 0.12, 1, 2, 3, 4,...
mac解压rar
掉头一去是风吹黑发,回首再来已雪满白头。——余光中 使用unar 1brew install unar 然后解压: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171Github-Id-VampireAchao:File ach...
boot项目添加运行参数的maven插件
不存在十全十美的文章,如同不存在彻头彻尾的绝望。——村上春树 之前说了 单元测试添加运行参数的maven插件 难道对于非单元测试就只能手动写命令了吗?当然不是!我们只需要使用: 123456789101112131415161718192021222324252627282930313233<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> <config...
单元测试添加运行参数的maven插件
愿望是半个生命,淡漠是半个死亡。——纪伯伦 stream-query在jdk17运行时发现反射报错 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687java.lang.RuntimeException: 当前JDK版本JAVA_8可能进行了模块化管理,可以尝试手动修改JVM启动参数来解决,如:--add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.invoke=ALL-UNNAMED at org.dromara.streamquery.stream.core.reflect.ReflectHelper.lambda$...
spring-state-machine使用redis持久化
问号是开启任何一门科学的钥匙。——巴甫洛夫 之前介绍过spring-state-machine持久化 今天使用redis实现 首先是需要一个RedisStateMachineRepository 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103import com.alibaba.nacos.common.utils.JacksonUtils;import jakarta.annotation.Nonnull;import jakarta.annotation.Resource;import org.dromara.streamquery.stream.core.stream.Steam;import org.springfra...
可变参数传入数组
通常是不想成名的人反而成名。——霍姆斯 今天遇到这样一个场景: 1234 @Overridepublic void deleteAllById(@Nonnull Iterable<? extends String> strings) { stringRedisTemplate.opsForHash().delete(SmCacheConst.STATE_MACHINE, );} 这里的org.springframework.data.redis.core.HashOperations#delete如下: 1 Long delete(H key, Object... hashKeys); 那这里我如果直接将Iterable转为数组,能正常运转吗? 也就是说,如果我是: 12Object[] array = StreamSupport.stream(strings.spliterator(), false).toArray(); stringRedisTemplate.opsForHash().delete(SmCac...
spring-state-machine的action踩坑
善则称人,过则称己,则民不争。——佚名 今天在状态机的action里进行事件触发,发现并没有触发 这是因为在action触发后,state才会进行更改,而不是在state触发后。。。 例如此处我们在action的execute打断点: 可以看到还没有更改状态 如果需要在state触发以后紧接着触发event,则可以放到拦截器里spring-state-machine拦截器处理
