保存分类时如何设置父分类?
How can I set the parent category when I save the category?
我正在使用 spring 和休眠开发 restful 应用程序。
我正在post这个JSON
{
"name": "Test Category",
"parent": 2
}
据此,我无法在我的控制器 post 方法中获取父 ID。当我使用 theCategory.getParent() 时,它 returns null.
这是我的控制器 post 方法。
@PostMapping("/categories")
public Category addCategory(@RequestBody Category theCategory) {
System.out.println("The parent category : " + theCategory.getParent());
// set id to 0
theCategory.setId(0);
categoryService.saveCategory(theCategory);
return theCategory;
}
保存类别时设置父类别的最佳方法是什么?这是我的类别 class - https://github.com/iyngaran/test/blob/master/Category.java
您的 getParent()
上有 @JsonIgnore
。这就是您在对象上得到 null 的原因。
(当您删除 @JsonIgnore
时,您将收到绑定错误)。
因此,我建议你 post 一个 DTO 对象,而不是实体。
在这个 dto 对象中,您可以将父对象映射到整数,而在 Category
class 中,您可以将其映射到 Parent
.
RequestBody必须是一个DTO,在addCategory方法中需要通过Id查找父Category(实体)
通过查看您的 class ,您的 json 应该是这样的
{
"name": "Test Category",
"parent": {
"id": 2,
}
}
我正在使用 spring 和休眠开发 restful 应用程序。
我正在post这个JSON
{
"name": "Test Category",
"parent": 2
}
据此,我无法在我的控制器 post 方法中获取父 ID。当我使用 theCategory.getParent() 时,它 returns null.
这是我的控制器 post 方法。
@PostMapping("/categories")
public Category addCategory(@RequestBody Category theCategory) {
System.out.println("The parent category : " + theCategory.getParent());
// set id to 0
theCategory.setId(0);
categoryService.saveCategory(theCategory);
return theCategory;
}
保存类别时设置父类别的最佳方法是什么?这是我的类别 class - https://github.com/iyngaran/test/blob/master/Category.java
您的 getParent()
上有 @JsonIgnore
。这就是您在对象上得到 null 的原因。
(当您删除 @JsonIgnore
时,您将收到绑定错误)。
因此,我建议你 post 一个 DTO 对象,而不是实体。
在这个 dto 对象中,您可以将父对象映射到整数,而在 Category
class 中,您可以将其映射到 Parent
.
RequestBody必须是一个DTO,在addCategory方法中需要通过Id查找父Category(实体)
通过查看您的 class ,您的 json 应该是这样的
{
"name": "Test Category",
"parent": {
"id": 2,
}
}