Java 客观化未过滤的负荷组参考<&燃气轮机;数据
我正在使用Objectify的Google云端点为我的移动应用程序创建一个Java后端。除了返回完整的JSON树(即使在我使用Objectify加载组时也是如此)之外,一切都很好。例如,树的子集包括具有地址和楼层列表的建筑类:Java 客观化未过滤的负荷组参考<&燃气轮机;数据,java,google-cloud-endpoints,objectify,Java,Google Cloud Endpoints,Objectify,我正在使用Objectify的Google云端点为我的移动应用程序创建一个Java后端。除了返回完整的JSON树(即使在我使用Objectify加载组时也是如此)之外,一切都很好。例如,树的子集包括具有地址和楼层列表的建筑类: public class Building { @Load(Everything.class) private Ref<Address> address; @Load(Lite.class}) private List<
public class Building {
@Load(Everything.class)
private Ref<Address> address;
@Load(Lite.class})
private List<Ref<Floor>> floors = new ArrayList<Ref<Floor>>();
public Address getAddress() {
return Deref.deref(address);
}
public List<Floor> getFloors() {
return Deref.deref(floors);
}
}
public class BuildingEndpoint {
@ApiMethod(name = "building.getLite", path = "building_get_lite")
public Building getLite(@Named("id") Long id) {
Building building = ofy().load().group(Lite.class).type(Building.class).id(id).now();
return building;
}
}
公共类建筑{
@加载(所有内容.类)
专用参考地址;
@加载(Lite.class})
私有列表层=新的ArrayList();
公共广播getAddress(){
返回Deref.Deref(地址);
}
公共列表getFloors(){
退单退单(楼层);
}
}
公共类构建点{
@ApiMethod(name=“building.getLite”,path=“building\u get\u lite”)
公共建筑getLite(@Named(“id”)Long id){
Building Building=ofy().load().group(Lite.class).type(Building.class).id(id).now();
回归大厦;
}
}
根据Objectify文档,应该加载地址,而不是楼层,但是,所有内容都在加载(以及楼层的子类,一直到对象层次结构的下方)
为了以防万一,Deref是个问题,我将其包括在这里:
public class Deref {
public static class Func<T> implements Function<Ref<T>, T> {
public static Func<Object> INSTANCE = new Func<Object>();
@Override
public T apply(Ref<T> ref) {
return deref(ref);
}
}
public static <T> T deref(Ref<T> ref) {
return ref == null ? null : ref.get();
}
@SuppressWarnings({ "unchecked", "rawtypes" })
public static <T> List<T> deref(List<Ref<T>> reflist) {
return Lists.transform(reflist, (Func)Func.INSTANCE);
}
}
公共类定义{
公共静态类Func实现函数{
public static Func INSTANCE=new Func();
@凌驾
公众不适用(参考){
返回deref(ref);
}
}
公共静态温度(参考){
return ref==null?null:ref.get();
}
@SuppressWarnings({“unchecked”,“rawtypes”})
公共静态列表deref(列表reflist){
返回Lists.transform(reflist,(Func)Func.INSTANCE);
}
}
对于为什么加载组不起作用,而整个对象层次结构仍在加载,我们非常感谢您提供的任何见解。您是否找到了解决方案,或者您是否仍然遇到了这个问题?你是不是在学习这方面的教程?