如何从Java HttpServlet中的POST有效负载中获取HTTP表单数据?

时间:2017-02-03 10:01:39

标签: java servlets http-post

我尝试从javax.servlet.http.HttpServletRequest实例中提取表单数据。根据在线推荐我尝试了request.getParameter(String paramKey),但它没有用。 request.getParameterValues()request.getParameterNames()request.getParameterMap()也不会返回任何表单数据。我想要的是一张带有表格数据的地图或另一种获取它们的方法。

2 个答案:

答案 0 :(得分:1)

它会在你编写代码request.getParameter()的地方运行。 这个东西总是需要写在servlet的doGetPost()方法中,如下所述。请参阅以下示例。

public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException  {

     String id = req.getParameter("realname");
     String password = req.getParameter("mypassword");
}

public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {

    String id = req.getParameter("realname");
    String password = req.getParameter("mypassword");
}

答案 1 :(得分:0)

您需要覆盖几种方法。它们是doPost(), doGet(), service()

当收到的请求类型为 POST 时,

doPost()将被执行。

当收到的请求类型为 GET 时,

doGet()将被执行。

如果您想要为这两个帖子执行单个方法,请最好使用service()方法。

示例:

 public class TestServlet{

    public void service( HttpServletRequest request, HttpServletResponse response ){

        request.getParameter( "paramterName" ).
    }
 }