我正在努力调整无限制嵌套angular-ui-tree模块以使用服务器端序列化和持久性。
现在,我有GET功能和现有的嵌套树结构渲染。然而,我要解决的部分是处理创建和更新操作(POST和PUT)。
鉴于该页面侧面的JSON结构以及每个节点是下面域模型的JSON代表,我该如何保存和更新数据?
@Table(name = "categories")
public class Category implements Serializable{
@Id
@Column(name = "category_id")
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
@Column
private String category;
@ManyToOne(cascade = CascadeType.PERSIST)
private Category parent;
@OneToMany(mappedBy = "parent", cascade = CascadeType.PERSIST, fetch = FetchType.EAGER, orphanRemoval = true)
private List<Category> categoryList = new ArrayList<>();
//getters, setters
}
我在这里设置了一个现有的控制器:
@RequestMapping(value = "/rest/category", method = RequestMethod.POST)
@ResponseStatus(HttpStatus.OK)
@ResponseBody
public List<Category> createCategory(@RequestBody Category category){
}
但它仅适用于单个类别对象,其中传入的JSON遵循Category
属性的表示。我的替代方案是在创建/更新操作上将整个JSON结构发送到此控制器,并更新持久性和树结构。
我一直坚持如何收到这些数据。是否有适用于此用例的现有库或序列化程序?