before this we have used request.getParameter(String) which is used to get a single request parameter value.
Now if we want to get all parameter names then we have to use request.getParameterNames()
it returns Enumeration of String objects of all parameter names.
After getting all parameter names we can get its value using request.getParameter(String) .
request.getParameterNames() is useful we have large number of parameters are used in request.
Following example is used to explain the above concepts.
Project Explorer:
index.jsp
1 | <%@page contentType="text/html" pageEncoding="UTF-8"%> |
Getting all parameters in servlet
1 |
AllSerlvet.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | package com.ebhor.servletparameters; import java.io.IOException; import java.io.PrintWriter; import java.util.Enumeration; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet(name = "AllParameters", urlPatterns = {"/allparameters"}) public class AllParameters extends HttpServlet { protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); try { Enumeration parameterNames = request.getParameterNames(); while (parameterNames.hasMoreElements()) { String parameterName = parameterNames.nextElement(); String value = request.getParameter(parameterName); System.out.println("parameter name is " + parameterName); out.println("Parameter name is <b>" + parameterName + "</b> value is <b> " + value + "</b> "); } out.println(""); out.println(""); } finally { out.close(); } } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } } |
pom.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | 4.0.0 com.ebhor ServletParameters 1.0-SNAPSHOT war ServletParameters ${project.build.directory}/endorsed UTF-8 javax javaee-web-api 6.0 provided org.apache.maven.plugins maven-compiler-plugin 2.3.2 1.6 1.6 ${endorsed.dir} org.apache.maven.plugins maven-war-plugin 2.1.1 false org.apache.maven.plugins maven-dependency-plugin 2.1 validate copy ${endorsed.dir} true javax javaee-endorsed-api 6.0 jar |
Result: