【发布时间】:2018-12-03 18:17:52
【问题描述】:
我有这个代码:
@Controller
public class createUserController {
@RequestMapping(value = "/user/registerUser", method = RequestMethod.GET, produces = "application/json")
public ModelAndView createFleet(HttpServletRequest request, HttpServletResponse response, User user) {
ModelAndView model = new ModelAndView();
model.setView(new MappingJackson2JsonView());
model.addObject("userCreated", new UserCreateResponse(user.getId(), user.getAccessCode()));
return model;
}
}
有回应:
{
"user": {
"id": null,
"userName": "3",
"password": "eccbc87e4b5ce2fe28308fd9f2a7baf3",
"email": "3",
"accessCode": "3"
},
"userCreated": {
"id": null,
"accessCode": "3"
}
}
我不希望主要用户包含在响应中。我只是想要减少的细节,所以我不会发回原始请求。我试过 .clear() 但这给出了 404 错误
【问题讨论】:
-
用 RestController 注释你的控制器,然后从你的方法返回一个 UserCreateResponse 响应而不是 ModelAndView。还有,如果这个方法要注册一个新用户,为什么叫createFleet(),为什么用GET而不是POST?
-
做到了,谢谢。我打算改成 POST,我只是从另一个控制器复制它,需要更新它。
标签: java spring spring-mvc modelandview