Java面试个人整理(手打勿喷,易于个人学习)4

来源:互联网 发布:after effects mac版 编辑:程序博客网 时间:2024/06/06 03:10

1.HTTP报文的结构是怎么样的


请求报文:

请求方法+请求的资源的URI+协议版本+可选的请求首部字段+内容实体


响应报文:

协议版本+状态码+用于解释状态码的原因短语+可选的响应首部字段+实体主体


2.cookie,session

cookie实际上 是一小段的文本信息。客户端请求服务器,如果服务器需要记录该用户的状态,就使用response向客户端浏览器颁发一个cookie。客户端浏览器会将cookie保存。当浏览器再次请求该网站时,浏览器会将请求地址和cookie一同发给服务器。服务器还可以修改cookie的内容。


session是另一种记录客户状态的机制。session保存在服务器上。客户端浏览器访问服务器时,服务器把客户端信息以某种形式记录在服务器上,这就是session。客户端浏览器再次访问时,只需要在session中查找该客户状态就可以。


客户端可以选择禁用cookie但是无法禁用session

存储数据量方面session和cookie也是不一样的,session能够存储任意的Java对象,cookie只能存储String类型的对象。




3.HTTP隧道


HTTP隧道是一种利用HTTP或者是HTTPS把多种网络协议封装起来进行通信的技术。因此,HTTP协议扮演了一个打通用于通信的网络协议的管道的包装器的角色。 把其他协议的请求掩盖成HTTP的请求就是HTTP隧道。



4.sendRedict和forward方法的区别


sendRedict方法会创建一个新的请求,而forward方法只是将请求转发到另一个新的目标上。


意思是forward发生的是服务器内部的跳转,浏览器地址栏不会变,而sendRedict会变。



5.URL编码

URL编码是负责把URL里面的空格和其他的特殊字符替换成对应的十六进制表示,反之时解码


6.JSP请求是如何被处理的


客户端通过浏览器发送JSP请求,服务端接收到请求,判断是否是第一次请求该页面,或者该页面是否改变,若是,服务器将JSP页面翻译成servlet,jvm将servlet翻译成.class文件,字节码文件加载到服务器内存上执行,服务器将处理结果以.html的形式返回给客户端,若该页面不是第一次请求,则省略翻译和编译的步骤,直接执行。



7.JSP指令


指令是当JSP页面被编译成Servlet的时候,JSP引擎要处理的指令。


包含指令:用来包含文件和合并文件内容到当前的页面


页面指令:用来定义JSP页面中特定的属性,比如错误页面和缓冲区


Taglib指令:用来声明页面中使用的自定义的标签库


8.JSP动作


jsp:include                当JSP页面被请求的时候包含一个文件

jsp:useBean             找出或者是初始化JavaBean

jsp:setProperty         设置JavaBean的属性

jsp:getProperty         获取JavaBean的属性

jsp:forward                把请求转发到新的页面

jsp:plugin                   产生特定浏览器的代码



9.JSP隐含对象(内置对象)

application

page

request

response

session

exception

out

config

pageContext

 



原创粉丝点击