Java 一对一/多对一关系的休眠条件

Java 一对一/多对一关系的休眠条件,java,many-to-one,hibernate-criteria,hibernate-onetomany,Java,Many To One,Hibernate Criteria,Hibernate Onetomany,我在两个对象之间具有一对一/多对一关系,如: public class Company { private Long compid; private String companyName; @OneToMany(mappedBy = "company", cascade = CascadeType.ALL) @LazyCollection(LazyCollectionOption.FALSE) private List<Employee> e

我在两个对象之间具有一对一/多对一关系,如:

public class Company {
    private Long compid;
    private String companyName;

    @OneToMany(mappedBy = "company", cascade = CascadeType.ALL)
    @LazyCollection(LazyCollectionOption.FALSE)
    private List<Employee> employees;
}

public class Employee {
    private Long empid;
    private String fstName;
    private String lstName;
    private String sal;

    @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
    @NotFound(action = NotFoundAction.IGNORE)
    @JoinColumn(name = "compid", nullable = true)
    private Company company;
}
但我得到了一个错误:

could not resolve property: company.companyName of: Employee

此代码中的问题在哪里?

您应该使用
标准。createCriteria
而不是
标准。createAlias
您在标准的第三行添加了一个类似
“company.companyName”
的空格。是打字错误吗?如果不是,那就是问题的原因。

我找到了问题的根源,这是我的一个愚蠢错误,在我的原始代码中,我将compny.companyName放在了company中,我忘记了company中的“a”,它工作得非常好

could not resolve property: company.companyName of: Employee