我有一个简单的 POJO:
@Document(collection = "questions")
public class Question {
private String title;
private Date createdAt;
//..... all the getter and setters
}
我没有在编辑表单上添加 createdAt,因为它不应该在创建后更改。但是由于绑定,更新控制器方法将在 createdAt 中获得空值。
@RequestMapping(method = RequestMethod.PUT, produces = "text/html")
public String update(@Valid Question question, BindingResult bindingResult,
Model uiModel, HttpServletRequest httpServletRequest) {
if (bindingResult.hasErrors()) {
populateEditForm(uiModel, question);
return "questions/update";
}
uiModel.asMap().clear();
questionRepository.save(question);
return "redirect:/questions/"
+ encodeUrlPathSegment(question.getId().toString(),
httpServletRequest);
}
因此,更新问题后,createdAt 字段将被清除。知道如何解决吗?我不想在没有 createdAt 字段的情况下创建另一个类并进行更新。