疯狂java


您现在的位置: 疯狂软件 >> 新闻资讯 >> 正文

Java如何得到GET和POST请求URL和参数列表


 

  在servlet中GET请求可以通过HttpServletRequest的getRequestURL方法和getQueryString()得到完整的请求路径和请求所有参数列表,POST的需要getParameterMap()方法遍历得到,不论GET或POST都可以通过getRequestURL+getParameterMap()来得到请求完整路径

  package com.zuidaima

  import java.io.IOException;

  import java.io.PrintWriter;

  import java.util.Map;

  import javax.servlet.ServletException;

  import javax.servlet.http.HttpServlet;

  import javax.servlet.http.HttpServletRequest;

  import javax.servlet.http.HttpServletResponse;

  public class GetParams extends HttpServlet {

  private static final long serialVersionUID = 1L;

  public GetParams() {

  super();

  }

  protected void doGet(HttpServletRequest request,

  HttpServletResponse response) throws ServletException, IOException {

  PrintWriter writer = response.getWriter();

  writer.println("GET " + request.getRequestURL() + " "

  + request.getQueryString());

  Map

  String queryString = "";

  for (String key : params.keySet()) {

  String[] values = params.get(key);

  for (int i = 0; i < values.length; i++) {

  String value = values[i];

  queryString += key + "=" + value + "&";

  }

  }

  // 去掉最后一个空格

  queryString = queryString.substring(0, queryString.length() - 1);

  writer.println("GET " + request.getRequestURL() + " " + queryString);

  }

  protected void doPost(HttpServletRequest request,

  HttpServletResponse response) throws ServletException, IOException {

  PrintWriter writer = response.getWriter();

  Map

  String queryString = "";

  for (String key : params.keySet()) {

  String[] values = params.get(key);

  for (int i = 0; i < values.length; i++) {

  String value = values[i];

  queryString += key + "=" + value + "&";

  }

  }

  // 去掉最后一个空格

  queryString = queryString.substring(0, queryString.length() - 1);

  writer.println("POST " + request.getRequestURL() + " " + queryString);

  }

  }