面试题07

1.HashMap和HashTable的区别?

  1. HashMap线程不安全HashTable是线程安全的,被sychoronized修饰
  2. 效率:HashMap没有被sychoronized修饰,效率会高一些。HashTable在代码中已经淘汰不怎么使用

2.Post请求和Get请求的区别?

  1. Get请求没有Post请求安全,在url中用?字段和value进行相关的传输,Post会把数据封装到请求体发给服务端
  2. Post请求的重点向服务器发送资源,get向服务器获取资源。
  3. Post适用于传输大文件,Get长度有限适用于小文件。
  4. get请求只支持Ascall码字符,向服务器传中文可能会乱码,Post支持标准字符集,可以传递中文。

3.Cookie和Session的区别?

  1. Cookie是web服务器发送给浏览器的一块信息,是客户端的,客户端可以进行禁用。
  2. Session是存储在web服务器端的一块信息,session对象存储特定用户会话。
    区别:
  3. 无论客户端做怎样的设置,session都能正常工作,当客户端用禁用cookie,就无法使用。
  4. 存储数据方面:session可以存储任意的java对象, cookie只能存储String类型的对象.

4.Filter 的生命周期?

  1. 用init方法进行初始化实例
  2. 调用doFilter()进行处理,回调
  3. destory()方法进行销毁实例。

5.拦截器(Interceptor)和Filter(过滤器的区别)?

  1. Interceptor只对Action请求起作用,Filter对所有的请求起作用
  2. Interceptor可以多次调用,Filter只可以调用一次。
  3. 在Action生命周期中,**Filter依赖于servlet,**拦截器没有
  4. Filter是回调函数实现的,Interceptor是基于反射实现的。

6.Filter的应用?

  1. 细粒度的访问控制
  2. 统计每个ip地址的访问次数
  3. 实现全站的统一编码
  4. 实现页面静态化

7.Servlet和jsp的区别?

  1. jsp本质上是一个Servlet,它们都是一个java文件
    2.根据MVC设计思想servlet侧重于控制层,jsp是html文件中内嵌java代码。侧重于显示,视图层

8.Servlet执行流程?

当服务器启动时候,通过init()方法初始化servlet,然后在通过doGet或者doPost方法进行相关的请求服务,最后通过destory()方法进行销毁

jsp四大作用域,九大内置对象,三大指令?

  1. PageContext page域当前页面有效
  2. Application context域
  3. Request域 一次请求有效
  4. session域 一次会话中有效

猜你喜欢

转载自blog.csdn.net/houzhicongone/article/details/120197566