0
我有兩個類:休眠無法解決財產資本值的名稱
public class User {
private int id;
private String Name;
private Set<Contact> Contacts = new HashSet<Contact>();
@Id
@GeneratedValue
public int getId() {
return id;
}
...
@OneToMany(mappedBy = "owner", cascade = CascadeType.ALL)
public Set<Contact> getContacts() {
return
}
}
和
public class Contact {
private int id;
private String nick;
private int age;
private User owner;
...
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "UserId")
public User getOwner() {
return owner;
}
}
當我打電話:
session.createCriteria(Contact.class).add(Restrictions.eq("owner.id", 2)).list();
一切都很好,但如果我將用戶的「id」屬性名稱更改爲「Id」代碼編譯但是:
session.createCriteria(Contact.class).add(Restrictions.eq("owner.Id", 2)).list();
會拋出「無法解析屬性owner.Id」異常。
我知道在Java中,我應該用小寫字母來啓動一個變量名,但我只是想知道爲什麼Hibernate會以這種方式運行。
感謝