标签:
在servlet中GET请求可以通过HttpServletRequest的getRequestURL方法和getQueryString()得到完整的请求路径和请求所有参数列表,POST的需要getParameterMap()方法遍历得到,不论GET或POST都可以通过getRequestURL+getParameterMap()来得到请求完整路径
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); } }
另附:
HttpServletRequest httpRequest=(HttpServletRequest)request; String strBackUrl = "http://" + request.getServerName() //服务器地址 + ":" + request.getServerPort() //端口号 + httpRequest.getContextPath() //项目名称 + httpRequest.getServletPath() //请求页面或其他地址 + "?" + (httpRequest.getQueryString()); //参数
参考1:http://blog.csdn.net/del1214/article/details/6538189
参考2:http://blog.csdn.net/yaerfeng/article/details/18942739
Java Servlet 获取GET和POST的完整URL及参数
标签:
原文地址:http://my.oschina.net/vvcumt/blog/515213