我将 JPA 用于我的实体类,但 JPA 不会为我的参数执行 setter 。我上了这门课:
@Entity
public class Groep implements Serializable, IGroep {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int groepID;
private String naam;
@Column(name = "MOTIVATIE", length = 1000)
private String motivatie;
protected Groep(){
}
@Override
public String getMotivatie() {
return motivatie;
}
public void setMotivatie(String motivatie) {
System.out.println("domein.Groep.setMotivatie()");
this.motivatie = motivatie;
}
}
但是我从来没有看到system.out...有什么问题?
最佳答案
访问类型取决于您放置注释的位置。
您已将它们放在实例变量上,因此持久性提供程序将尝试通过反射直接访问它们。
如果您使用 hibernate 作为持久性提供程序,则可以通过以下方式简单地定义 @Id:
请记住,关于所有实体的注释放置策略应该保持一致。