spring的一些关键点,过滤器和拦截器
filter过滤器,使用责任链模式,使用回调机制
interceptor拦截器使用aop动态代理切面技术实现前,后增强技术;使用反射技术
回调和反射都能灵活的实现底层调用高层的相关方法
同步,异步,回调的区别
数据库锁
1,悲观锁
select * from a where id=xxx for update 行级锁,锁定当前行,等待完成实际update操作时再一起提交,悲观锁不建议使用,容易造成死锁,就是容易造成表锁,然后所有的表操作禁止
2,乐观锁
update t set a=xx where id=xx and version=xx利用版本号控制行级锁,实现效率比悲观锁好
3,给予状态机的乐观锁
update t set status=4 where id=xx and status=1这种锁效率更高,建议使用,只要当前行操作后修改状态,同步执行相同操作时就会上锁,一般通过返回值是否是1判断是否获得锁