request的方法
*获取请求方式: request.getMethod();
* 获取ip地址的方法 request.getRemoteAddr();
* 获得用户清气的路径;
* request.getRequestURL().tostring(); --- url
* request.getRequestURI() --- uri
*获得工程名;
* request.getContextPath();
*在接受数据前设置编码
* post请求
* request.setCharcterEncoding("UTF-8"); ---一定要在接收文件前编码才不会乱码 post请求
* get请求
* new String (request.getParameter(name).getByte("ISO-8859-1"),"UTF-8")
* request对象存取数据
* setAttribute(name,value);
* object getAttribute(name)
* request的作用范围;
* 一次请求的范围
* 创建和销毁
* 创建: 客户想服务启发送了一次请求以后,服务器就会创建一个request的对象
* 销毁: 当服务器对这次请求作出了响应之后
* 重定向和转发的区别
* 重定向地址栏会变,转发地址栏不变
* 重定向是两次请求两次响应,转发是一次请求一次响应
* 重定向路径需要添加工程名,转发不需要工程名
* 重定向可以重定向到任何网页,转发只能在服务器内部转发
重定向: response.sendReditect("/download/register.jsp");
转发; request.getRequestDispatcher(path).forword(request,response);
总结:
Response
* 通过response设置状态码:setStatus(int status);
* 通过response设置响应头:setHeader(String name,String value);,setIntHeader(String name,int value),setDateHeader(String name,long date);
* 通过response设置响应体:getOutputStream(),getWriter();
* response的其他的API:
* sendRedirect(String path);
* response输出中文的乱码问题:
* 字节流输出中文:
* 设置浏览器的字符集编码. response.setHeader(“Content-Type”,”text/html;charset=UTF-8”);
* 设置输出内容的字节数组的字符集编码. “”.getBytes(“UTF-8”);
* 字符流输出中文:
* 设置浏览器字符集编码. response.setHeader(“Content-Type”,”text/html;charset=UTF-8”);
* 设置response的缓冲区的编码. response.setCharacterEncoding(“UTF-8”);
* response完成了文件下载功能:
Request
* 使用request获得客户机的信息. getRemoteAddr(),getMethod(),getRequestURI(),getRequestURL()
* 获得请求参数:getParameter(),getParameterValues(),getParameterMap()
* 作为域对象存取数据:setAttribute(),getAttribute(),removeAttribute();
* 接收参数的中文乱码的处理:
* GET :new String(“”.getBytes(“ISO-8859-1”),”UTF-8”)
* POST :request.setCharacterEncoding(“UTF-8”);
* request何时创建和销毁的?
* 创建:从客户端向服务器发送请求.那么服务器创建一个request对象.
* 销毁:服务器为这次请求作出了响应之后,服务器就会销毁request对象.
* 作用范围:一次请求.
* 转发和重定向区别?
* 转发是一次请求一次响应,重定向两次请求和两次响应.
* 转发地址栏不变,重定向会变化.
* 转发的路径不需要加工程名,重定向需要加工程名.
* 转发只能在本网站内部,重定向可以定向到任何网站.