【发布时间】:2018-01-11 15:03:12
【问题描述】:
我正在使用:
- 弹簧数据休息
- 龙目岛
当我在控制器中收到我的实体时
@PostMapping
@ResponseStatus(HttpStatus.CREATED)
Long create(@RequestBody Blog blog) {
blogService.insert(blog);
return blog.getId();
}
我只设置了博客名称,但是Blog.java 包含默认值:
private Boolean isDisabled = false;
private Boolean canCreateTags = true;
private Boolean canCreateCategories = true;
private Boolean hasRss = false;
这是我的请求的请求正文:
{"organization":{"id":"1"},"description":"test"}
所有未发送的值似乎都是null。
但是当我使用BlogDTO 而不是Blog 时:
@PostMapping
@ResponseStatus(HttpStatus.CREATED)
Long create(@RequestBody BlogDTO blog) {
blogService.insert(blog);
return blog.getId();
}
所有值都设置为默认值。
- 为什么没有使用我的默认值创建实例?
- 为什么使用默认值创建 DTO 实例?
【问题讨论】:
-
如果对您有帮助,请将答案标记为正确
标签: java spring spring-mvc spring-data spring-data-rest