小编Chr*_*aga的帖子

"运行带有SINGLE_TABLE继承策略的条件时,发生了调用getter的IllegalArgumentException"

尝试使用简单限制装饰的hibernate Criteria从数据库列出对象时出现此错误

Criteria criteria = session.createCriteria(Licence.class);
criteria.add(Restrictions.eq("gym", gym.getId()));
List<Licence> list = criteria.list();
Run Code Online (Sandbox Code Playgroud)

我有两个类:Licence有一个关联Gym.这两个类正在扩展DataModel,用于管理有关数据编辑的信息 - (创建和提供,谁和何时).这两个班级的重要性也很重要@Inheritance(strategy = InheritanceType.SINGLE_TABLE).

执照

@Entity
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
public class Licence extends DataModel implements Serializable {

    private Gym gym;
    private String licenceType;
    private String keyCode;
    private Date expireDate;
    private ELicenceExpiry expired;

    public Licence() {
    }

    @ManyToOne
    @JoinColumn(name="gym_id")
    public Gym getGym() {
        return gym;
    }

    public void setGym(Gym gym) {
        this.gym = gym;
    }

    @Column(name = "licence_type")
    public String …
Run Code Online (Sandbox Code Playgroud)

java hibernate criteria single-table-inheritance

7
推荐指数
2
解决办法
7379
查看次数