java 内部类 构造函数_java – 在Hibernate中没有内部类的实体的默认构造函数

我有两个类。一个是实体类,另一个用作复合键类。

代码如下。

@Entity

public class Supply {

@Embeddable

class Id implements Serializable {

@Column(name = "supplier_id")

private long supplierId;

@Column(name = "merchandise_id")

private long merchandiseId;

public Id() {}

public Id(long sId, long mId) {

this.supplierId = sId;

this.merchandiseId = mId;

}

}

@EmbeddedId

private Id id = new Id();

}

如果我使用尝试找到

from Supply where merchandise_id=%d and supplier_id=%d

Hibernate会抛出异常,即:

No default constructor for entity: com.entity.Supply$Id; nested exception is org.hibernate.InstantiationException: No default constructor for entity: com.entity.Supply$Id

但是,我发现如果我将类ID更改为静态。一切都会好起来的。

我只是想知道这些东西是如何发生的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值