javaweb之request获取请求头和请求数据
来源:互联网 发布:耐克抢鞋软件 编辑:程序博客网 时间:2024/04/27 19:06
package test.request;import java.io.IOException;import java.io.InputStream;import java.lang.reflect.InvocationTargetException;import java.util.Enumeration;import java.util.Map;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.sun.org.apache.commons.beanutils.BeanUtils;//HttpServletRequest获取请求头和请求数据//请求数据一半来说要先检查再使用,检查非空和不是空格public class RequestDemo2 extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {System.out.println("---------获取请求数据方式1-------------");// 获取指定的请求数据String value = request.getParameter("username");if (value != null && !value.trim().equals("")) {System.out.println(value);}System.out.println("---------获取请求数据方式2-------------");// 获取所有的请求数据Enumeration e = request.getParameterNames();while (e.hasMoreElements()) {String paramName = (String) e.nextElement();String value2 = request.getParameter(paramName);System.out.println(paramName + "=" + value2);}System.out.println("---------获取请求数据方式3-------------");// 获取所有的请求数据,同名的只能获取一次,就是第一次String[] values = request.getParameterValues("username");for (int i = 0; values != null && i < values.length; i++) {System.out.println(values[i]);}System.out.println("---------获取请求数据方式4-------------");// 这个特别实用,框架的模型驱动,这个Map的value肯定是String数组类型,因为有同名的请求数据// 实际开发中是不会 request.getParameter("username");用这种方式的,都是要创建一个model的Map<String, String[]> map = request.getParameterMap();User user = new User();try {// 用map中的数据填充beanBeanUtils.populate(user, map);} catch (IllegalAccessException e1) {e1.printStackTrace();} catch (InvocationTargetException e1) {e1.printStackTrace();}System.out.println(user.getPassword());System.out.println("---------获取请求数据方式5-------------");// request.getInputStream();是上传文件的时候获取数据的方式// 普通数据是获取不到的InputStream in = request.getInputStream();int len = 0;byte[] buffer = new byte[1024];while ((len = in.read(buffer)) > 0) {System.out.println(new String(buffer, 0, len));}}// 获取请求头private void test1(HttpServletRequest request) {System.out.println("---------获取请求头方式1-------------");// 拿到指定的请求头System.out.println(request.getHeader("cache-control"));System.out.println("---------获取请求头方式2-------------");// 拿到所有指定的请求头Enumeration e = request.getHeaders("cache-control");while (e.hasMoreElements()) {String headValue = (String) e.nextElement();System.out.println(headValue);}System.out.println("---------获取请求头方式3-------------");// 拿到所有请求头Enumeration e1 = request.getHeaderNames();while (e1.hasMoreElements()) {String headerName = (String) e1.nextElement();String headValue = request.getHeader(headerName);System.out.println(headerName + "=" + headValue);}}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doGet(request, response);}}
package test.request;public class User {private String[] username;public String[] getUsername() {return username;}public void setUsername(String[] username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}private String password;}
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>给RequestDemo2发送请求数据</title> </head> <body><!-- 浏览器可以通过两种方式向服务器发送请求数据 超链接方式后面跟了中文要经过url编码后再提交 --><a href="/day06/servlet/RequestDemo2?username=xxx">点点</a><br/> <form action="/day06/servlet/RequestDemo2" method="post"> 用户名1:<input type="text" name="username"/><br/> 用户名2:<input type="text" name="username"/><br/> 密码:<input type="password" name="password"/><br/> <input type="submit" value="提交"/> </form> </body></html>
此程序还需用到commons-beanutils-1.9.0.jar和commons-logging-1.1.3.jar这两个jar包
0 0
- javaweb之request获取请求头和请求数据
- javaweb之request获取请求头和请求数据
- request获取请求头和请求数据.
- javaweb之request获取referer请求头实现防盗链
- javaWeb_11-request获取请求头和请求数据
- request获取请求头
- 获取请求头和请求数据
- 获取请求头和请求数据
- request获取请求头消息
- Request获取请求数据
- request获取请求数据
- Request获取请求数据
- javaWeb中request获取请求数据的方式。
- javaWeb中request获取请求数据的方式。
- javaweb之request实现请求转发以及request域带数据给转发资源
- AJAX之x-request-with请求头
- javaweb之请求转发和请求包含
- 获取请求头和响应头
- 玩转Google开源C++单元测试框架Google Test系列(gtest)之四 - 参数化
- 黑马程序员_泛型程序设计
- 数字字符串转二进制
- 交替字符串
- 了解描述页模板,让你的宝贝人气高涨1
- javaweb之request获取请求头和请求数据
- 怎样在网上卖衣服
- 二分查找算法java实现
- 玩转Google开源C++单元测试框架Google Test系列(gtest)之五 - 死亡测试
- spring框架学习(一)
- 2014年3月3日 人在证途
- 10个有关String的面试问题
- 玩转Google开源C++单元测试框架Google Test系列(gtest)之六 - 运行参数
- brew doctor老有个Python的警告