使用经过验证的类进行postmapping

时间:2016-06-30 05:01:31

标签: spring-mvc spring-boot

我正在使用springboot附带的执行器样品。但是,有一种方法olleh我真的不知道如何使用它,here是控制器的源代码。以下是我不了解的代码片段。

@PostMapping("/")
@ResponseBody
public Map<String, Object> olleh(@Validated Message message) {
    Map<String, Object> model = new LinkedHashMap<String, Object>();
    model.put("message", message.getValue());
    model.put("title", "Hello Home");
    model.put("date", new Date());
    return model;
}

在我看来,我需要向http://localhost:8080/发送帖子请求,但是,看起来输入是一个Message类,然后它会创建一个字典并将其作为JSON返回给用户?

任何人都可以与我分享如何发布Java对象吗?

Update1:​​我尝试过techtabu的答案,然而,它返回400抱怨我们发布的消息对象无效。知道为什么会这样吗? enter image description here

1 个答案:

答案 0 :(得分:0)

您实际上必须使用等同于Message类的JSON对象发出POST请求。你可以做点什么,

hashP

Spring MVC知道如何将其转换为只有一个字段curl -X POST 'http://localhost:8080/' --header "Content-Type:application/json" -d '{ "value" : "This is my message" }' 的Message Object。控制器中的方法将使用您的消息和其他一些字段创建value,并将其作为JSON对象再次返回。