如何在Spring MVC中明确获取帖子数据?

2022-08-31 11:42:37

有没有办法获取帖子数据本身?我知道spring处理将post数据绑定到java对象。但是,给定我要处理的两个字段,如何获取该数据?

例如,假设我的窗体有两个字段:

 <input type="text" name="value1" id="value1"/>
 <input type="text" name="value2" id="value2"/>

如何在我的控制器中检索这些值?


答案 1

如果使用的是其中一个内置控制器实例,则控制器方法的参数之一将是 Request 对象。您可以调用以获取 POST(或 PUT)数据值。request.getParameter("value1")

如果您使用的是 Spring MVC 注释,则可以向方法的参数添加带注释的参数:

@RequestMapping(value = "/someUrl")
public String someMethod(@RequestParam("value1") String valueOne) {
 //do stuff with valueOne variable here
}

答案 2

OP 确切问题的另一个答案是将内容类型设置为,然后声明输入参数。这将作为声明的变量传入 POST 数据的文本(在下面的示例中)。consumes"text/plain"@RequestBody StringStringpostPayload

当然,这假设您的POST有效负载是文本数据(正如OP所述)。

例:

    @RequestMapping(value = "/your/url/here", method = RequestMethod.POST, consumes = "text/plain")
    public ModelAndView someMethod(@RequestBody String postPayload) {    
        // ...    
    }

推荐