1. HttpServletRequest常用方法
HttpServletRequest:是ServletRe quest的子接口,专门用来处理基于HTTP协议的请求对象,对请求信息的封装
常用的方法:
// 获取上下文路径
java.lang.String getContextPath();
// 获取指定名称的请求头信息
java.lang.String getHeader(java.lang.String name);
// 获取请求的方式(get/post)
java.lang.String getMethod();
// 获取资源的名称(上下文路径/资源名称)
java.lang.String getRequestURI();
// 获取请求的资源的全路径
java.lang.StringBuffer getRequestURL();
获取用户提交的请求参数的方法:
// 获取指定名称的参数的值
java.lang.String getParameter(java.lang.String name);
// 获取所有的请求参数,并且封装到一个map集合中
java.util.Map<java.lang.String,java.lang.String[]> getParameterMap();
// 获取所有的请求参数的名称
java.util.Enumeration<java.lang.String> getParameterNames();
// 获取指定名称的参数的值
java.lang.String[] getParameterValues(java.lang.String name);
区分getInitParameter(String name)和getParameter(String name)?
- getInitParameter(String name)是ServletConfig中的方法,获取当前的Servlet中的初始化参数(在web.xml文件中)
- getParameter(String name)是ServletRequest中的方法,获取前台用户提交的数据
2. HttpServletResponse常用方法
HttpServletResponse接口:是javax.servlet.ServletResponse接口的子接口,专门用来处理基于HTTP协议的响应信息
HttpServletResponse中常用的方法:
// 获取字符输出流
java.io.PrintWriter getWriter();
// 获取字节输出流(通常在做文件下载的时候使用)
ServletOutputStream getOutputStream();
==以上两个方法不能共存==否则报错:
3. 请求的中文乱码处理
1).HttpServletRequest
中文乱码的原因:
Tomcat默认是使用ISO-8859-1的方式在处理请求参数,一个字节一个字节的编码,不适合中文的编码
解决的方案:
- 先按ISO-8859-1方式解码,再按UTF-8方式编码
- 方式一麻烦,可以通过修改配置的方式(在server.xml文件中修改端口的节点中)只支持get方式是请求
- 在获取请求参数之前进行编码的设置(只支持post方式的请求)
2). HttpServletResponse
响应信息的中文乱码:
以上的两行代码可以合并在一起
Comments | NOTHING