java每天5道面试题(二十一)
2018-03-04 19:27
330 查看
1.HTTP响应的结构是怎么样的? HTTP响应由三个部分组成: 状态码(Status Code):描述了响应的状态。可以用来检查是否成功的完成了请求。请求失败的情况下,状态码可用来找出失败的原因。如果Servlet没有返回状态码,默认会返回成功的状态码HttpServletResponse.SC_OK。 HTTP头部(HTTP Header):它们包含了更多关于响应的信息。比如:头部可以指定认为响应过期的过期日期,或者是指定用来给用户安全的传输实体内容的编码格式。如何在Serlet中检索HTTP的头部看这里。 主体(Body):它包含了响应的内容。它可以包含HTML代码,图片,等等。主体是由传输在HTTP消息中紧跟在头部后面的数据字节组成的。 2.什么是cookie?session和cookie有什么区别? cookie是Web服务器发送给浏览器的一块信息。浏览器会在本地文件中给每一个Web服务器存储cookie。以后浏览器在给特定的Web服务器发请求的时候,同时会发送所有为该服务器存储的cookie。下面列出了session和cookie的区别:无论客户端浏览器做怎么样的设置,session都应该能正常工作。客户端可以选择禁用cookie,但是,session仍然是能够工作的,因为客户端无法禁用服务端的session。
在存储的数据量方面session和cookies也是不一样的。session能够存储任意的Java对象,cookie只能存储String类型的对象。
3.浏览器和Servlet通信使用的是什么协议? 浏览器和Servlet通信使用的是HTTP协议。 4.什么是HTTP隧道? HTTP隧道是一种利用HTTP或者是HTTPS把多种网络协议封装起来进行通信的技术。因此,HTTP协议扮演了一个打通用于通信的网络协议的管道的包装器的角色。把其他协议的请求掩盖成HTTP的请求就是HTTP隧道。 5.sendRedirect()和forward()方法有什么区别? sendRedirect()方法会创建一个新的请求,而forward()方法只是把请求转发到一个新的目标上。重定向(redirect)以后,之前请求作用域范围以内的对象就失效了,因为会产生一个新的请求,而转发(forwarding)以后,之前请求作用域范围以内的对象还是能访问的。一般认为sendRedirect()比forward()要慢。
在存储的数据量方面session和cookies也是不一样的。session能够存储任意的Java对象,cookie只能存储String类型的对象。
3.浏览器和Servlet通信使用的是什么协议? 浏览器和Servlet通信使用的是HTTP协议。 4.什么是HTTP隧道? HTTP隧道是一种利用HTTP或者是HTTPS把多种网络协议封装起来进行通信的技术。因此,HTTP协议扮演了一个打通用于通信的网络协议的管道的包装器的角色。把其他协议的请求掩盖成HTTP的请求就是HTTP隧道。 5.sendRedirect()和forward()方法有什么区别? sendRedirect()方法会创建一个新的请求,而forward()方法只是把请求转发到一个新的目标上。重定向(redirect)以后,之前请求作用域范围以内的对象就失效了,因为会产生一个新的请求,而转发(forwarding)以后,之前请求作用域范围以内的对象还是能访问的。一般认为sendRedirect()比forward()要慢。
相关文章推荐
- java每天5道面试题(八)
- java每天5道面试题(五)
- java每天5道面试题(十四)
- 每天5道面试题(二)java基础
- java每天5道面试题(九)
- java每天5道面试题(十二)
- java每天5道面试题(十)
- java每天5道面试题(十一)
- java每天5道面试题(十七)
- java每天5道面试题(十五)
- java每天5道面试题(三)
- java每天5道面试题(十八)
- 每天5道面试题(四)java基础
- 每天5道面试题(五)java基础
- java每天5道面试题(二十)
- java每天5道面试题(四)
- java每天5道面试题(六)
- java每天5道面试题(一)
- 每天5道面试题(六)java基础
- java每天5道面试题(十九)