Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hibernate 4 EntityManager CriteriaBuilder sortby嵌套属性_Java_Spring_Hibernate_Jpa_Hibernate Entitymanager - Fatal编程技术网

Java Hibernate 4 EntityManager CriteriaBuilder sortby嵌套属性

Java Hibernate 4 EntityManager CriteriaBuilder sortby嵌套属性,java,spring,hibernate,jpa,hibernate-entitymanager,Java,Spring,Hibernate,Jpa,Hibernate Entitymanager,我的模型: public class Nested { private Integer id; private String sortBy; [...] } public class ObjectToQuery { private Integer id; private Nested nested; private OtherProperty otherProperty; [...] } 我的元模型: @StaticMetamodel(

我的模型:

public class Nested {
    private Integer id;
    private String sortBy;
    [...]
}

public class ObjectToQuery {
    private Integer id;
    private Nested nested;
    private OtherProperty otherProperty;
    [...]
}
我的元模型:

@StaticMetamodel(Nested.class)
public class Nested_ {
    public static volatile SingularAttribute<Nested, Integer> id;
    public static volatile SingularAttribute<Nested, String> sortBy;
[...]
}
@StaticMetamodel(ObjectToQuery.class)
public class ObjectToQuery_ {
    public static volatile SingularAttribute<ObjectToQuery, Integer> id;
    public static volatile SingularAttribute<ObjectToQuery, Nested> nested;
    public static volatile SingularAttribute<ObjectToQuery, OtherProperty> otherProperty;
    [...]
}
(按嵌套的.id进行排序)

但我想按

ObjectToQuery.Nested.sortBy

我使用Hibernate 4.2.6.FINAL作为我的JPA实现

我自己找到了答案:

Join<ObjectToQuery, Nested> join = rootObjectToQuery
    .join(ObjectToQuery_.nested);
criteriaQuery.orderBy(criteriaBuilder.asc(join
    .get(Nested_.sortBy)));
Join-Join=rootObjectToQuery
.join(ObjectToQuery\uu.nested);
criteriaQuery.orderBy(criteriaBuilder.asc(join
.get(Nested_u.sortBy));
我希望这对某人有帮助

ObjectToQuery.Nested.sortBy
Join<ObjectToQuery, Nested> join = rootObjectToQuery
    .join(ObjectToQuery_.nested);
criteriaQuery.orderBy(criteriaBuilder.asc(join
    .get(Nested_.sortBy)));