笔试20190305

1、同源策略和JSONP

  1)同源策略(Same Origin Policy)

    URL由协议、域名、端口和路径组成,如果两个URL的协议、域名和端口相同,则它们同源。否则,只要有任何一个不同,就被当作跨域。

    同源策略是浏览器最重要也最基础的一个安全功能,不同源的客户端脚本在没有明确授权的情况下,不能读写对方的资源。所以a.com下的js脚本采用ajax读取b.com下的文件数据是会报错的。

    不受同源策略限制:

    Ⅰ、页面中的链接,重定向以及表单提交

    Ⅱ、跨域资源的引入是可以的。但是js不能读写加载其中的内容。如嵌入页面的<script src>,<img>,<link>,<iframe>等包含src属性的标签。

  2)JSONP(JSON with Padding)

    跨域数据访问的一种方式。

    例如:a.com/jsonp.html想得到b.com/main.js中的数据,就可以在jsonp.html中创建一个回调函数xxx,动态加载<script>元素。向服务器发送请求,请求地址后加上参数,通过callback参数指定回调函数名字:http://b.com/main.js?callback=xxx。在main.js中调用xxx并且以JSON格式作为参数传递,完成回调。

    这样,就可以跨域访问到数据。

2、SpringMVC 使用HandlerExceptionResolver  和使用@ExceptionHandler 区别

  @ExceptionHandler:进行异常处理的方法必须与出错的方法在同一个Controller中

  HandlerExceptionResolver:可以进行全局异常控制。

3、Filter与Interceptor区别联系

  联系:都是AOP思想的体现,都能实现权限检查、日志记录等

  区别:

  Filter:依赖于servlet容器,是JavaEE标准,是在请求进入容器之后,还未进入Servlet之前进行预处理,并且在请求结束返回给前端这之间进行后期处理。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。使用过滤器的目的是用来做一些过滤操作。过滤器可以简单理解为“取你所想取”,忽视掉那些你不想要的东西,比如:在过滤器中修改字符编码;在过滤器中修改HttpServletRequest的一些参数,包括:过滤低俗文字、危险字符等。

  Interceptor:拦截器不依赖与servlet容器,依赖于web框架。在SpringMVC中就是依赖于SpringMVC框架,在SSH框架中,就是依赖于Struts框架。在实现上基于Java的反射机制。由于拦截器是基于web框架的调用,因此可以使用spring的依赖注入(DI)获取IOC容器中的各个bean,进行一些业务操作,同时一个拦截器实例在一个controller生命周期之内可以多次调用。但是缺点是只能对controller请求进行拦截,即请求还没有到controller层时进行拦截,请求走出controller层次,还没有到渲染时图层时进行拦截,结束视图渲染,但是还没有到servlet的结束时进行拦截。对其他的一些比如直接访问静态资源的请求则没办法进行拦截处理,拦截器功在对请求权限鉴定方面确实很有用处。它可以简单理解为“拒你所想拒”。

4、三个线程,名字分别ABC,按顺序打印ABC各20次,要求打印出的字符串为ABCABCABC......

转载于:https://www.cnblogs.com/Ezi0/p/10479896.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值