Spring MVC返回JSONS和异常处理


问题内容

我正在使用带有控制器的Spring MVC,我的问题是如何返回与@ResponseBody对象不同的JSON响应,该对象已返回并转换为要返回的JSON。

为了进一步详细说明,我有一个名为“ UserDetails”的对象,该对象有两个名为“ name”,“ emailAddress”的字段

@ResponseBody UserDetails

现在返回的json看起来像

{name:“ TheUsersName”,emailAddress:“ abc@abc123.com”}

我有什么办法可以在返回之前(所有控制器中所有方法中的所有json中的所有json)修改json,在该状态中将添加“状态”字段,而其他json数据将位于json中的“
data”键下。

另外,当Java服务器从某处引发异常时,我该如何返回json到前端,该json应该具有“ status:false”和异常名称(尽管至少具有状态部分)


问题答案:

是。而是返回一个模型和一个视图。

public ModelMap getUserDetails() {
    UserDetails userDetails; // get this object from somewhere
    ModelMap map = new ModelMap()(;
    map.addAttribute("data", userDetails);
    map.addAttribute("success", true);
    return map;
}

要添加异常,您可以使用key和success = false进行相同的操作。