head first 学习笔记 JSP&Servlet--4

本文介绍了HTTP响应的两种类型:字节响应和字符响应,并详细解释了如何使用Servlet API进行设置。此外,还深入探讨了重定向的概念,包括绝对路径和相对路径重定向的区别及其在实际应用中的具体表现。
response的输出返回有两种
一种是字节响应,另一种是字符响应

字节响应:
OutputStream os = resp.getOutputStream();

字符响应:
PrintWriter pWriter = resp.getWriter();


response的其他常用方法

//如果响应中已经有这个值就替换,否则就新增
resp.addHeader("gg", "ff");

//覆盖原有的值
resp.setHeader("gg", "ff");

//用提供的值替换原有的值,或者在响应中添加一个新的值
resp.setIntHeader("gg", 43);

2 重定向:

重定向设置有两种方式 :绝对路径重定向、相对路径重定向

绝对路径重定向:
resp.sendRedirect("http://www.sina.com.cn");

相对路径重定向:
又可以分为两种:前面有斜杠、前面无斜杠

一个客户请求:
http://www.wickeddly.com/myApp/cool/bar.do

在跳转到这个请求中后,无斜杠进行重定向:
sendRedirect(“foo/stuff.html”);

结果容器的解析后会变成一个完整的路径:
http://www.wickeddly.com/myApp/cool/foo/stuff.html

若是加斜杠的重定向
sendRedirect(“/foo/stuff.html”);

结果容器的解析后会变成一个完整的路径:
http://www.wickeddly.com/foo/stuff.html

myApp/cool/ 消失了

不要在提交响应之后再次调用sendRedirect方法


3 请求分配

重定向是让客户来完成工作,请求分配要求服务器上的XX来完成工作,也就是重定向是再次将路径返回给浏览器,浏览器再次请求服务器的过程,即完成了跳转。所以它的请求路径会发生变化.而请求分配给浏览器的访问路径不会发生变化

请求分配的调用方式

RequestDispatcher view = req.getRequestDispatcher("result.jsp");
view.forward(req, resp);

请求中的路径设置同重定向中的绝对和相对设置方式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值