Response内置对象

时间:2022-09-03 15:22:36

request内置对象:主要用来处理用户的请求

response内置对象:处理对用户的响应(在调用service方法时容器会传递过来)

response重要方法:

public void addCookie(Cookie  cookie)
[向客户端添加一个cookie信息到客户端浏览器,还可以为cookie设置生命时间] public void sendRedirect(java.lang.String location)
[该方法可以实现客户端跳转,客户端跳转的方式有多种]

客户端跳转最大特征(重点):

1.浏览器地址栏信息改变

2.重新向服务器端发送了一个新的请求

public java.io.PrintWriter getWriter()
[取得一个向客户端输出薪资的打印流对象,可以使用该对象实现信息的输出] public void setContentType(java.lang.String type)
[可以设置响应的MIME类型和字符编码]

服务器端重定向:客户端发送一次请求,却在服务器做了多次转发(重定向),但是最终对于客户端来说只是发送一次请求

req.getRequestDispatcher("转发路径").forward(req,resp)
[服务器端使用该代码实现服务器转发]

Session内置对象和request内置对象(仅代表当次请求的对象):

1.request内置对象中的属性只是在当次请求中有效(经过客户端跳转之后就无效,因为客户端跳转属于第二个请求)

2.如果要让客户端跳转之后保存的属性还有效,则可以使用session内置对象

session常用的方法:
setAttribute()[保存属性] getAttribute
[根据属性名取得值(只能取得使用setAttribute()保存的数据值)] removeValue
[根据属性名称删除对应的值,只能删除使用setAttribute()保存的数据值)] public boolean isNew()
[判断当前访问的用户是否是第一次访问] public void invalidate()
[销毁当前的session,一般用来实现用户的注销功能] public java.lang.String getId()
[取得session的编号,该编号和浏览器中名字叫JSESSIONID cookie的值一样]

产生session的两种情况:

1.第一次调用getSession()方法时候会创建,以cookie的方式保存在浏览器(如果直接访问servlet不调用该方法将不会产生session内置对象)

2.访问jsp页面时会产生(因为jsp是一个特殊的Servlet,在这个特殊的Servlet中默认调用了getSession()方法)

Config内置对象主要是用来获取配置文件中的初始化参数

application内置对象:是一个表示服务器范围的内置对象(多个用户共享,比如要监听当前上线用户的人数,取得项目的真实路径(方便上传),就需要使用到该对象)