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

  1. 在servlet中GET请求可以通过HttpServletRequest的getRequestURL方法和getQueryString()得到完整的请求路径和请求所有参数列表,POST的需要getParameterMap()方法遍历得到,不论GET或POST都可以通过getRequestURL+getParameterMap()来得到请求完整路径
  2. package com.zuidaima                          
  3. import java.io.IOException;  
  4. import java.io.PrintWriter;  
  5. import java.util.Map;  
  6.   
  7. import javax.servlet.ServletException;  
  8. import javax.servlet.http.HttpServlet;  
  9. import javax.servlet.http.HttpServletRequest;  
  10. import javax.servlet.http.HttpServletResponse;  
  11.   
  12. public class GetParams extends HttpServlet {  
  13.     private static final long serialVersionUID = 1L;  
  14.   
  15.     public GetParams() {  
  16.         super();  
  17.     }  
  18.   
  19.     protected void doGet(HttpServletRequest request,  
  20.             HttpServletResponse response) throws ServletException, IOException {  
  21.         PrintWriter writer = response.getWriter();  
  22.         writer.println("GET " + request.getRequestURL() + " "  
  23.                 + request.getQueryString());  
  24.   
  25.         Map<String, String[]> params = request.getParameterMap();  
  26.         String queryString = "";  
  27.         for (String key : params.keySet()) {  
  28.             String[] values = params.get(key);  
  29.             for (int i = 0; i < values.length; i++) {  
  30.                 String value = values[i];  
  31.                 queryString += key + "=" + value + "&";  
  32.             }  
  33.         }  
  34.         // 去掉最后一个空格  
  35.         queryString = queryString.substring(0, queryString.length() - 1);  
  36.         writer.println("GET " + request.getRequestURL() + " " + queryString);  
  37.     }  
  38.   
  39.     protected void doPost(HttpServletRequest request,  
  40.             HttpServletResponse response) throws ServletException, IOException {  
  41.         PrintWriter writer = response.getWriter();  
  42.         Map<String, String[]> params = request.getParameterMap();  
  43.         String queryString = "";  
  44.         for (String key : params.keySet()) {  
  45.             String[] values = params.get(key);  
  46.             for (int i = 0; i < values.length; i++) {  
  47.                 String value = values[i];  
  48.                 queryString += key + "=" + value + "&";  
  49.             }  
  50.         }  
  51.         // 去掉最后一个空格  
  52.         queryString = queryString.substring(0, queryString.length() - 1);  
  53.         writer.println("POST " + request.getRequestURL() + " " + queryString);  
  54.     }  
  55. }  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。