hibernate级联更新的问题

笨马克 2006-12-05 04:15:07
现在我有三个类:
订单类:Order
客户类:Customer
仓库类:Warehouse
其中Order类的field中有Customer和Warehouse,Order对Customer以及Warehouse都是1对多的单向关联关系。
Order的hbm.xml中的相关配置是这样的:
<many-to-one name="customer" class="com.abc.wms.model.base.Customer">
<column name="CUSTOMER_ID" not-null="true" unique-key="UK_ORDER"/>
</many-to-one>

<many-to-one name="warehouse" class="com.abc.wms.model.base.Warehouse">
<column name="WAREHOUSE_ID" not-null="true" unique-key="UK_ORDER"/>
</many-to-one>

现在有一个方法是根据Order的Id来load出Order对象,用的是org.springframework.orm.hibernate.HibernateTemplate.load(Class entityClass, Serializable id);
在load之后,我用session.flush();结果打印出update customer的sql语句。

我在上面的hbm.xml中设置cascade="none",也还是更新customer。请问为什么会更新呢?怎么才能不更新呢?
...全文
291 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lujh99 2006-12-05
  • 打赏
  • 举报
回复
你的UK_ORDER是怎么定义的
awusoft 2006-12-05
  • 打赏
  • 举报
回复
一对多关系中,关系都应该由多端来管理
awusoft 2006-12-05
  • 打赏
  • 举报
回复
应该是楼上说的总是
yourstar 2006-12-05
  • 打赏
  • 举报
回复
会不会和inverse有关,加上inverse="true" 看看。
笨马克 2006-12-05
  • 打赏
  • 举报
回复
customer没有做关联。Order是单向关联Customer。
cascade="none"是这样设置的
<many-to-one name="customer" class="com.abc.wms.model.base.Customer" cascade="none">
<column name="CUSTOMER_ID" not-null="true" unique-key="UK_ORDER"/>
</many-to-one>
Marcus-Z 2006-12-05
  • 打赏
  • 举报
回复
你cascade="none"设置在哪了,另外你customer方没做关联映射吗?

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧