Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.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 HQL SELECT子句不起作用_Java_Sql_Hibernate_Hql_Criteria - Fatal编程技术网

Java HQL SELECT子句不起作用

Java HQL SELECT子句不起作用,java,sql,hibernate,hql,criteria,Java,Sql,Hibernate,Hql,Criteria,我有一个实体叫做CategorySet @Entity @Table(name = "CATEGORY_SET") public class CategorySet { @Id @Column(name = "ID") @GeneratedValue private Integer id; @OneToOne @JoinColumn(name = "ID") private Category parent; @OneToOne @JoinColumn(name

我有一个实体叫做CategorySet

@Entity
@Table(name = "CATEGORY_SET")
public class CategorySet {
    @Id
    @Column(name = "ID")
    @GeneratedValue
    private Integer id;
@OneToOne
@JoinColumn(name = "ID")
private Category parent;

@OneToOne
@JoinColumn(name = "ID")
private Category child;

public CategorySet(Category parent, Category child) {
    this.parent = parent;
    this.child = child;
}

public CategorySet() {
}
}
在我的DaoImpl中,我从实体中获取唯一的子列。 但它正在返回空列表

String innerQueryString = "select CS.child FROM CategorySet CS";
Query innerQuery = sessionFactory.getCurrentSession().createQuery(innerQueryString);
List list = innerQuery.list();
我也使用了标准。它抛出ArrayIndexOutOfBoundException

    Criteria  criteria  =sessionFactory.getCurrentSession().createCriteria(CategorySet.class);
    criteria.setProjection(Projections.property("child")); //Projections.property is used to retrieve specific columns

    List students = criteria.list();

有人能帮我解决这个问题吗?

家长和孩子联合栏目解决了这个问题

@Entity
@Table(name = "CATEGORY_SET")
public class CategorySet {
    @Id
    @Column(name = "ID")
    @GeneratedValue
    private Integer id;

    @OneToOne
    @JoinColumn(name = "PARENT")
    private Category parent;

    @OneToOne
    @JoinColumn(name = "CHILD")
    private Category child;

    public CategorySet(Category parent, Category child) {
        this.parent = parent;
        this.child = child;
    }

    public CategorySet() {
    }
}