1. 程式人生 > >java如何得到GET和POST請求URL和引數列表

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 = 1Lpublic 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, String[]> params = request.getParameterMap();  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, String[]> params = request.getParameterMap();  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); }}