你认为的:我学习了某种技术或者思想,掌握了之后运用到我们的项目中。实现了某个优化,达到了某种欧标。面试官听到的:这个人技术尺度很窄,只会自己项目中的东西。
spring事务传播属性?
xml | 注解 | 实际 |
REQUIRES_NEW | REQUIRED | REQUIRES_NEW |
REQUIRED | REQUIRES_NEW | REQUIRES_NEW |
REQUIRED | NOT_SUPPORTED | REQUIRED |
NOT_SUPPORTED | REQUIRED | NOT_SUPPORTED |
慎用for update 悲观锁
在无事务环境下,锁不会释放
springboot初体验
-
启动和junit默认加载主类下级的包,主类务必放在最上层。
redis学习日记(一)-在CentOS上部署redis服务
之前公司项目用过redis做消息队列,但是没有深入探究过,趁着现在有空重新系统学习一下。
Spring事务异常rollback-only深入探究
首先rollback-only出现的原因先简单带过一下吧:在使用了Propagation.REQUIRED的事务传递中,若本层的service捕获了下层service的异常,则本层中的事务也无法提交,在方法结束,事务尝试提交时会报出Transaction rolled back because it has been marked as rollback-only错误。这是因为REQUIRED是同一个事务,具有原子性。当内层的方法出现异常的时候,会标记一个rollback-only,这样外层方法提交的时候,判断rollback-only为true,那么整个事务都不允许提交。参考代码如下:(以下代码全部基于service层方法级别注解,且事务传播机制为REQUIRED)
又一次栽倒arraylist浅拷贝的坑
先记下两次的解决方法。
cron表达式 每个月的最后一个工作日的另一种解法
近日有个需求,要求某项定时任务在每个月的最后一个工作日执行(仅考虑周末的情况),但是没有好的cron表达式写法,最后在stackoverflow找到了思路
悲观锁
悲观锁简而言之就是查询的时候就把数据锁上,修改完提交后释放锁。这样如果别的session有事务没提交的话,查询就会处在等待状态。锁一旦释放,这个session争夺到资源后立即上锁。的确暴力而有效啊。