本文首发于cartoon的博客
转载请注明出处:https://cartoonyu.github.io/cartoon-blog/post/interview-question/java-interview-question19/
- 什么是 CSRF 攻击,如何避免?
- 参考博客:https://blog.csdn.net/lamp_yang_3533/article/details/79959071
- CSRF为跨站请求伪造,利用非法获取系统信任用户Cookie进行跨站攻击
- 避免
- 验证HTTP Refer字段
- 在请求地址添加Token并验证
- 在HTTP头自定义属性并验证
- throw 和 throws 的区别?
- throw为语句级抛出异常,throws为方法级抛出异常
- throw不可以单独使用,throws可以
- final、finally、finalize 有什么区别?
- final为不可变修饰词,用于声明属性,方法或类不可变
- finally为异常捕获机制一部分,总是会被执行。若try或catch有return语句,finally早于此return语句执行
- finalize为Object方法,调用此方法可以实现资源的回收,但是回收时间由JVM决定
- try-catch-finally 中哪个部分可以省略?
- catch和finally可以省略,但不能同时省略
- 在java 7新增了一个语法try(){},该书写可以实现自动的资源的初始化以及回收