TodoItem
JWT todo
互联网 20 大安全隐患 todo
CSRF 攻击的应对之道 todo
https://www.ibm.com/developerworks/cn/web/1102_niugang_csrf/
https://segmentfault.com/a/1190000006944760?utm_source=tag-newest
https://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html
https://www.ibm.com/developerworks/cn/web/1102_niugang_csrf/
https://segmentfault.com/a/1190000006944760?utm_source=tag-newest
https://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html
1 | !!val |
一个!是取非 再一个!又取非 相当于把这个数据转换为boolean类型了
1 | const array = [1, 2, 3, 4, 5]; |
可以在二个需要相互依赖的Service之间抽出一层OperateService,通过OperateService解耦。
加入有这样的场景:
AService.doA()方法调用到BService.doB()方法,而且二者都是注解了事务,抛出异常时会回滚。
1 | @Transactional(rollbackFor = Exception.class) |
加入在doA()中调用了doB()之后才出现的异常,这个时候doB()的事务会不会回滚?
根据我自己的测试,doB()中正常执行完毕,这个时候事务依然还不会被提交,而doA()在doB()执行完了之后如果抛出异常,那么doA()和doB都会回滚。
那么问题来了,如果有这样的业务场景,需要在doB执行之后必须提交事务,即使在其执行之后doA()后面的逻辑抛出异常,doB的事务也要提交到数据库的时候,要怎么处理?
可以通过@Trancational注解去处理,注解在doB上:
1 | @Transactional(rollbackFor = Exception.class, noRollbackFor = ServiceDoAException.class) |
term:代表完全匹配,即不进行分词器分析,文档中必须包含整个搜索的词汇
这篇笔记摘选自张满胜老师的《英语语法新思维中级教程第2版》,以及其他网上知识点收集,只是我自己的个人复习笔记,禁止转载,如有侵权,请联系我删除。
when的意思相当于at that time(在……时刻),从句的谓语动词通常是短暂动词,表示某一时刻的动作(从句也可接延续动词,这时从句往往用过去进行时态)。
I started my dinner when he left. 他走了之后,我才开始吃晚饭。
He left when I got there. 我到了以后,他才离开。
若主从句都用一般过去时,则表示从句动作先发生。要强调从句动作先发生,从句还可以用过去完成时。
I started my dinner when he had left.
He left when I had got there.
短暂动作用一般过去时,延续动作用过去进行时。