Servlet
获取请求参数通用方式:
不论get还是post请求方式都可以使用下列方法来获取请求参数
1. String getParameter(String name):根据参数名称获取参数值
2. String[] getParameterValues(String name):根据参数名称获取参数值的数组
3. Enumeration
4. Map<String,String[]> getParameterMap():获取所有参数的map集合
* 中文乱码问题:在获取参数前,设置request的编码request.setCharacterEncoding("utf-8");
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.IOException;
import java.util.Enumeration;
import java.util.Map;
import java.util.Set;
@WebServlet("/requestDemo4")
public class RequestDemo4 extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
//根据参数名称获取值
String username = request.getParameter("username");
System.out.println(username);
//根据参数获取值的数组
String[] hobbies = request.getParameterValues("hobby");
// for (String hobby : hobbies) {
// System.out.println(hobby);
// }
//获取所有参数的名称
Enumeration<String> parameterNames = request.getParameterNames();
// while (parameterNames.hasMoreElements()) {
// String s = parameterNames.nextElement();
// System.out.println(s);
// }
//获取所有参数的map集合
Map<String, String[]> parameterMap = request.getParameterMap();
// Set<String> strings = parameterMap.keySet();
// for (String string : strings) {
// String[] strings1 = parameterMap.get(string);
// System.out.println(string);
// for (String s : strings1) {
// System.out.println(s);
// }
// }
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request,response);
}
}