Blog
Blog copied to clipboard
My Blog
# 如何实现一个状态机? 状态机有很多的应用场景,表征的是一个事物的生命周期或者状态变迁。   如何实现一个状态机呢? ## 乐观锁 第一种方法是使用乐观锁,只有当原始状态符合我们的预期时才更新为下一个状态。 ```java public void stateTransfer1(Long id, String prevStatus, String status) { fooDAO.updateStatusTo(id, prevStatus, status); } ``` ## 悲观锁 另一种方式是,先对行加锁,然后在应用层的一个事务里判断记录目前的状态是否可以转换为下一个状态,这里一个好的实际是用一个Map维护状态转移之间的映射关系,方便维护。 ```java private static...
## 剖析 由于工作变动的原因,最近3个月说实话在技术上有点落后了,没有之前那样每天都会持续学习新技术,或者至少在关注,看github,medium,看源码。 这3个月更多的是业务上的学习,完全切换了自己的工作背景,context,从0开始学习,会计知识,银行业务,流动性管理,支付清算,路漫漫,很多目前还是停留在表面,未能产出自己的想法。 另一个自己的弱项就是表述能力,或者说是沟通能力,走出去的能力,并不是写好代码就行了,业务的复杂性迫使自己去打开自己,找人学习,自己蒙头琢磨,可能别人一句话就道破自己的疑问。 ## 麻痹 业务飞速发展,都是使用成熟的轮子在造车,作为一个技术人,如果自己不去抽时间学习,久而久之真的就被麻痹了,离开了这些成熟的轮子,就废人一个。 领域建模,始终是一项核心能力。 ## 总结 要有核心能力。 赶上大趋势。
## HandlerInterceptor 实践 这两天花了很多时间在折腾使用AOP对Spring MVC Controller进行拦截,但是没有效果。然后尝试了下Spring的HandlerInterceptor,使用起来比较简单,思想也容易理解。下面是Spring Doc对HandlerInterceptor接口及相关方法的说明。 HandlerInterceptor 接口: Workflow interface that allows for customized handler execution chains. Applications can register any number of existing or custom interceptors for certain...
POST JSON数据 curl -H "Content-Type: application/json" -X POST -d '{"username":"xyz","password":"xyz"}' http://xxxxxx:8004/xxxx
mvn -pl moduleABC am install [参考](https://stackoverflow.com/questions/574594/how-can-i-create-an-executable-jar-with-dependencies-using-maven)
CTRL + A: 移动到命令起始处 CTRL + E: 移动到命令结尾处