设为首页 加入收藏

TOP

Hibernate建立多对一的单向关联关系
2015-11-21 01:44:15 来源: 作者: 【 】 浏览:0
Tags:Hibernate 建立 单向 关联 关系

映射代码:

  
元素建立了customer属性和ORDERS表的外键CUSTOMER_ID之间的映射。它包括以下属性。 name:设定待映射的持久化类的属性的名字,此处为Order类的customer属性。
column:设定和持久化类的属性对应的表的外键,此处为ORDERS表的外键CUSTOMER_ID。 class:设定待映射的持久化类的属性的类型,此处设定customer属性为Customer类型。 not-null:如果为true,表示customer属性不允许为null,该属性的默认值为false。not-null属性会影响hbm2ddl工具生成的 数据库schema,hbm2ddl工具会为ORDERS表的CUSTOMER_ID外键设置not null约束,但not-null属性不会影响hbm2java工具生成 Java源代码。此外,not-null属性还会影响Hibernate的运行时行为,Hibernate在向数据库中保存Order对象时,会先检查它的customer属性是否为null。 lazy:如果为proxy,表示对关联的Customer对象使用延迟检索策略并且使用代理,这是默认值。如果为false,就意味着当Hibernate从数据库中加载Order对象时,还会立即自动加载与它关联的Customer对象
注:当Hibernate持久化一个临时对象(指刚通过new语句创建),在默认情况下,它不会自动持久化所关联的其他临时对象,所以会抛出TransientObjectException异常。如果希望当Hibernate持久化一个临时对象时自动持久化所关联的临时对象,可以把 的cascade属性设为"save-update",cascade属性的默认值为"none"。 当cascade属性为"save-update",表明保存或更新当前对象时(即执行insert或update语句时),会级联保存或更新与它关联的对象。

?

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇MongoDBCRUD基础入门 下一篇java纯数字加密解密实例

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: