X65535JavaWeb部分03
斜杠在浏览器和服务器解析结果
/*
/ 斜杠在浏览器中解析成 http://localhost:8080/
/ 斜杠在服务器上解析成 http://localhost:8080/工程路径/
可以通过servletContext.getRealPath("/") 获取
特殊情况:请求重定向
response.sendRediect("/");
把"/"发送给浏览器,让浏览器去解析
*/
解决回传数据给客户端中文乱码问题
用HttpServletResponse对象的getCharacterEncoding()方法,这个方法的作用就是获得字符集的类型
ISO-8859-1不支持中文
解决方案
HttpServletResponse对象有一个方法setContentType(),这个方法可直接设置ContentType()响应头的值
必须放在获取流对象的前面,不然会失效
请求重定向
是指客户端给服务器发送请求,服务器告诉客户端说,我给你一个地址,你去新地址访问,因为之前的地址可能已经被废弃
这是已经废弃地址的servlet,起名为response1,设置状态码和响应头
这是新的地址response2,写一些在浏览器上显示的内容
请求重定向的特点:
- 浏览器地址栏会发生变化,输入response1,会自动跳转response2
- 2次请求,第1次返回响应头302,第2次返回200
- 不能共享Request中的数据
- 不能访问web-inf下的文件
- 可以访问工程外的资源
下面是请求重定向的第2种实现方式