1.response对象的方法
(1)String getParameter(String name) 根据页面表单组件名称获取页面提交数据
(2)String [] getParameterValues(String name) 获取一组以相同名称命名的表单组件提交的数据
(3)void setCharacterEncoding(String charset) 指定每个请求的编码,在调用request.getParameter()办法之前设定,可以用于解决中文乱码问题
(4)RequestDispatcher getRequespatcher(String path) 返回一个javax.servlet.RequestDispatcher 对象 ,该对象的forward(方法用于转发请求)
(5) void addCookie(Cookie cookie) 向客户端添加Cookie
(6) void setContentType(String type) 设置HTTP响应的contentType类型
(7) void setCharacterEncoding(String charset) 设置响应所采用的字符编码类型
(8) void sendRedirect(String location) 将请求从新定位到一个新的URL上
2.什么是转发:
冲程序的角度理解,即当客户端发送一个请求到服务器后,Web 服务器在容器内部完成请求跳转,然后将最终结果发送给浏览器,整个过程都是在容器内部完成的。而对应到客户端,无论服务器内部如何处理,作为浏览器都只是提出了一个请求,因而客户端的URL地址不会发生改变。
转发的原理实现很简单,使用request的 getRequestDispatcher()方法得到的RequestDispatcher对象,此对象用于封装一个由路径所标识的服务器资源,然后用这个对象调用forward()方法,将请求传递给服务器上另外的JSP页面或者HTML文件 转发可以再多个页面交互过程中实现请求数据的共享。
3.什么是重定向:
使用response对象的sendRedirect()方法 ,该方法的执行结果就是重新向服务器请求一个地址链接,由于是发送新请求,因而上次请求中的数据将随之丢失,这种行为称为重定向。由于服务器重新定向了URL,因而在客户端浏览器中显示的是新的URL地址,所以重新定向可以理解为浏览器至少提交了两次请求。