我是新来的冬眠和冬眠映射的学习者,我已经创建了一个“一对一”冬眠映射的演示代码,根据我的理解,我已经正确定义了所有内容,但是我收到了“发生IllegalArgumentException发生了调用getter的事件”,我已经在hbm文件中正确定义了Mapping,我的POJO类完美地包含了getter和setter,但是我没有弄清楚我做错了什么,如果有人可以回答我的问题,那将是很好的。
这是我的Pojo类,其具有int idCompany变量,因此,我收到错误消息,因为“发生IllegalArgumentException调用com.dto.Company.idCompany的getter”。
public class Company {
int idCompany;
String name;
String initials;
String email;
int contact;
private Address add;
public Address getAdd() {
return this.add;
}
public void setAdd(Address add) {
this.add = add;
}
public int getIdCompany() {
return idCompany;
}
public void setIdCompany(int idCompany) {
this.idCompany = idCompany;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getInitials() {
return initials;
}
public void setInitials(String initials) {
this.initials = initials;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public int getContact() {
return contact;
}
public void setContact(int contact) {
this.contact = contact;
}
}
这是我公司的hbm文件
<class name="com.dto.Company" table="company">
<id name="idCompany" column="idCompany">
<generator class="assigned">
<param name="property">add</param>
</generator>
</id>
<property name="name" column="name"></property>
<property name="initials" column="initials"></property>
<property name="email" column="email"></property>
<property name="contact" column="contact"></property>
<one-to-one name="add" class="com.dto.Company" cascade="all" ></one-to-one>
</class>
</hibernate-mapping>
我正在保存这样的对象-
address.setCountry("India");
address.setDistrict("Barwani");
address.setLine1("One Line");
address.setLine2("Second Line");
address.setPin(1234);
address.setState("MP");
company.setIdCompany(201);
company.setContact(984545454);
company.setEmail("ab@mail.com");
company.setInitials("AB");
company.setName("Amit");
company.setAdd(address);
Transaction transaction = session.beginTransaction();
session.save(company);
transaction.commit();
session.close();
请向我描述为什么我遇到此问题,所以我将学习它,并且永远不要再发生此问题。 谢谢。 :)