比方说,我从一个具有几个字段的实体和一个代表动态属性的映射开始。看起来像这样:
@Entity
public class Item {
@Id
private int id;
private String name;
private Map<String, String> attributes;
}
我想创建一个Spring Data Rest投影,其中那些动态属性是所得JSON对象的第一级属性,与类属性一起。例如,如果 Item 的名称值为“ Product A”,并且属性映射包含两个条目“ color”->“ red”和“ size”->“ 20x10”,则结果json对象可能如下所示。
{
name: "Product A",
color: "red",
size: "20x10"
}
我怀疑这样做是否可行,我知道我可以通过在BasePathAwareController上使用自定义方法返回Map来完成我想要的事情,但是我认为投影会更干净。