public class Request extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//读取请求行中url中的属性
StringBuffer requestURL = req.getRequestURL();
//读取请求行中uri(资源文件精准定位地址)中的属性
String requestURI = req.getRequestURI();
//读取请求行中method中的属性
String method = req.getMethod();
System.out.println("requestURL:"+requestURL);
System.out.println("requestURI:"+requestURI);
System.out.println("method:"+method);
//读取请求头【post(请求体)】中的参数信息
Enumeration<String> parameterNames = req.getParameterNames();
while (parameterNames.hasMoreElements()){
//请求参数
String ParameterNames = parameterNames.nextElement();
String parameter = req.getParameter(ParameterNames);
System.out.println("请求参数:"+ParameterNames+" 参数值:"+parameter);
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//post请求传入的参数是汉字的时候,response接收的时候是乱码的
//原因:在使用get的方式请求的时候,请求参数保存在请求头中,在
// http协议包到达服务器的时候,第一件事就是进行解码,tomcat负责解码(utf-8)
//在使用post的请求方式发送请求的时候,请求参数保存在请求头体....由request解码(iso-8859-1)
//解决方法:通知请求对象request使用utf-8进行解码
req.setCharacterEncoding("utf-8");
//post取前端传的参数值和get的取值方式是相同的
Enumeration<String> parameterNames = req.getParameterNames();
while (parameterNames.hasMoreElements()){
String parameter = parameterNames.nextElement();
String value = req.getParameter(parameter);
System.out.println("请求的参数:"+parameter+" 参数的值"+value);
}
}
}
原文:https://www.cnblogs.com/8ling1ling/p/14360263.html