是意子王出饭种 第三章请求与响应
第三章 请求与响应
電子工常出领社: Publishing House of Electronics Industry 请求与响应 米 HttpServlet类中有针对Http请求和发送响应 的方法 *HttpServletRequest接口 *HttpServletResponse接口
请求与响应 HttpServlet类中有针对Http请求和发送响应 的方法 HttpServletRequest接口 HttpServletResponse接口
意子王出社 Publishing House of Electronics Industry 请求:HttpServletRequest 当HTTP转发给Web容器时,.容器会收集相关 信息并将其信息包装在一个HttpServletRequest对 象中 *请求信息的内容 *请求行:请求的方式(比如:GET或POST)、 请求资源和使用的协议、 ·嘉貌鼻 (Header:)信息体的附加信息, *信息体:请求的参数名称和参数值等信息
请求:HttpServletRequest 当HTTP转发给Web容器时,容器会收集相关 信息并将其信息包装在一个HttpServletRequest 对 象中 请求信息的内容 请求行:请求的方式(比如:GET或POST)、 请求资源和使用的协议、 请求的头信息(Header:)信息体的附加信息, 如主机地址等 信息体:请求的参数名称和参数值等信息
智重子王常出版社, Publishing House of Electronics Industry 1获取请求信息 getParameter根据请求的参数名称得到某参数值的 语法为: String username=request.getParameter("name"); getParameterValues获取复选框或列表的值可以通 过此方法得到: String textContent[]request.getParameterValues("param"); *注意可能得到空对象ul(没有提交数据)
1 获取请求信息 getParameter根据请求的参数名称得到某参数值的 语法为: String username=request.getParameter(“name”); getParameterValues获取复选框或列表的值可以通 过此方法得到: String textContent[ ] = request. getParameterValues(“param”); 注意可能得到空对象null(没有提交数据)
香子工出版社 Publishing House of Electronics Industry 1获取请求信息 getParameterNames:使用此方法可以知道请求中有多 少请求参数, Enumeratione =req.getParameterNames(); while (e.hasMoreElements()){ String param=e.nextElement(); } getParameterMap:将请求参数以Map对象返回, Map的键(Key)是请求参数名称,值(Value)是请 求参数值
1 获取请求信息 getParameterNames:使用此方法可以知道请求中有多 少请求参数, Enumeration e =req.getParameterNames(); while (e.hasMoreElements()){\ String param=e.nextElement(); } getParameterMap:将请求参数以Map对象返回, Map的键(Key)是请求参数名称,值(Value)是请 求参数值
昌重子工常出版社, Publishing House of Electronics Industry 1 HttpServeltRequest举例 提交信息login.jsp 用户名: 密码:
1 HttpServeltRequest举例 提交信息 login.jsp 用户名: 密码:
Publishing House of Electronics Industry 1 HttpServeltRequesta举例 接受信息Servlet MyLogin.java(Servlet) request.setCharacterEncoding("UTF-8"); /接受从登录页面传过来的信息 String name=request.getParameter("name"); /接受密码 String pwd=request.getParameter("pwd");
1 HttpServeltRequest举例 接受信息Servlet MyLogin.java(Servlet) . request.setCharacterEncoding("UTF-8"); //接受从登录页面传过来的信息 String name=request.getParameter("name"); //接受密码 String pwd=request.getParameter("pwd");
昌意子王常出版社 Publishing House of Electronics Industry 请求对象的常用方法 getProtocol():获取请求使用的通信协议,如http/1.1等。 *getServletPath(0:获取请求的JSP页面所在的目录。 幸getContentLength):获取HTTP请求的长度。 *getMethod():获取表单提交信息的方式,如POST或GET。 *getHeader(String s):获取请求中头的值。 *getHeaderNames():获取头名字的一个枚举。 *getHeaders(String s):获取头的全部值的一个枚举。 *getRemoteAddr(O:获取客户的IP地址。 *getRemoteHost():获取客户机的名称(如果获取不到,就获取IP地址) getServerName(O:获取服务器的名称。 getServerPort(O:获取服务器的端口号。 tParameterNames):获取表单提交的信息体部分中name参数值的一个枚 举
请求对象的常用方法 getProtocol():获取请求使用的通信协议,如http/1.1等。 getServletPath():获取请求的JSP页面所在的目录。 getContentLength():获取HTTP请求的长度。 getMethod():获取表单提交信息的方式,如POST或GET。 getHeader(String s):获取请求中头的值。 getHeaderNames():获取头名字的一个枚举。 getHeaders(String s):获取头的全部值的一个枚举。 getRemoteAddr():获取客户的IP地址。 getRemoteHost():获取客户机的名称(如果获取不到,就获取IP地址)。 getServerName():获取服务器的名称。 getServerPort():获取服务器的端口号。 getParameterNames():获取表单提交的信息体部分中name参数值的一个枚 举
Publishing House of Electronics Industry HTP标头(Head)信息 米 getHeader():与getParameter类似,指定标头 名字返回对应的值; 米 getHeaders():与getParameterValues类似, 指定标头名字放回对应的Enumeration,元 素为字符串 getHeaderNames():getParameterNames 类似,取得所有标头名称 举例:HeaderServlet.java
HTTP标头(Head)信息 getHeader():与getParameter类似,指定标头 名字返回对应的值; getHeaders():与getParameterValues类似, 指定标头名字放回对应的Enumeration,元 素为字符串 getHeaderNames():与getParameterNames 类似,取得所有标头名称 举例:HeaderServlet.java
電子王掌出领社 Publishing House of Electronics Industry 2参数编码处理(中文乱码) 米 中文乱码的由来 *常用字符集 *ASC(美国信息互换信息代码):与8位二进制对 应0-127 *1S08859-1:增加了所有西方欧洲语言的附加字 符0-255。 *GB2312和GBK(中国国家标准汉字信息交换编 码):与16位二进制对应,中文的首位为1。 *Utf-8:是一种针对Jnicodel的可变长度字符编码, 又称万国码
2 参数编码处理(中文乱码) 中文乱码的由来 常用字符集 ASCII (美国信息互换信息代码):与8位二进制对 应0-127 ISO8859-1:增加了所有西方欧洲语言的附加字 符0-255。 GB2312和GBK(中国国家标准汉字信息交换编 码):与16位二进制对应,中文的首位为1。 Utf-8:是一种针对Unicode的可变长度字符编码, 又称万国码