获取请求参数通用方式
- 获取请求参数通用方式:不论get还是post请求方式都可以使用下列方法来获取请求参数
- String getParameter(String name):根据参数名称获取参数值 username=zs&password=123
- String[] getPara,eterValues(String name):根据参数名称获取参数值的数组 hobby==xx&hobby=game
- getParmeterNames():获取所有请求参数名称
- Enumeration getParameterNames():获取所有请求的参数名称
- Map<String,String[]> getParameterMap():获取所有参数的map集合
package com.ailyt.request;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedReader;
import java.io.IOException;
import java.util.Enumeration;
import java.util.Map;
@WebServlet(value = "/r4")
public class RequestStudy4 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
/* //get获取请求参数
//根据参数名称获取参数值
String username = req.getParameter("username");
System.out.println("get-->"+username);*/
this.doPost(req,resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//post获取请求参数
//根据参数名称获取参数值
/*String username = req.getParameter("username");
System.out.println("post-->"+username);*/
//根据参数名获取参数值的数组
/*String[] hobbies = req.getParameterValues("hobby");
for (String hobby : hobbies) {
System.out.println(hobby);
}*/
//获取所有请求的参数名称
/*Enumeration<String> parameterNames = req.getParameterNames();
while (parameterNames.hasMoreElements()) {
String name = parameterNames.nextElement();
String value = req.getParameter(name);
System.out.println(name);
System.out.println(value);
}*/
//获取所有参数的Map集合
Map<String,String[]> parameterMap = req.getParameterMap();
parameterMap.forEach((name, strings) -> {
for (String string : strings) {
System.out.println(name+"-->"+string);
}
});
}
}