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

来源:互联网 发布:汉诺塔问题python 编辑:程序博客网 时间:2024/06/07 03:20

转自:http://www.zuidaima.com/share/1550463555308544.htm

在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, 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);}}    


7 4
原创粉丝点击