67,538
社区成员
发帖
与我相关
我的任务
分享<hibernate-mapping>
<class name="hbm.test.dao.TPerson" table="t_person" schema="dbo" catalog="HibernateTest">
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="assigned" />
</id>
<property name="name" type="java.lang.String">
<column name="name" length="50" />
</property>
<property name="age" type="java.lang.Integer">
<column name="age" />
</property>
<many-to-one name="country" class="hbm.test.dao.TCountry">
<column name="country" />
</many-to-one>
<many-to-one name="title" class="hbm.test.dao.TTitle">
<column name="title" />
</many-to-one>
<property name="remark" type="java.lang.String">
<column name="remark" length="50" />
</property>
</class>
</hibernate-mapping>
// 获得职员
TPerson p = new TPersonDAO().findById(id);
//设置新国籍(此时只知道国籍的code,不知道name,因为下拉菜单只传递code)
p.setCountry(new TCountry(2));
//修改后提交数据库
new TPersonDAO().save(p);
HibernateSessionFactory.getSession().getTransaction().commit();
//如果不强制refresh,TCountry对象的name字段为空
HibernateSessionFactory.getSession().refresh(p);