JiveJdon Community Forums
在线345人   Home   论坛   培训咨询   精华   查搜   注册   登陆
首页 » 论坛 » 开源项目大家谈
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表
???en_US.forumThreadNext.name??? 下一主题
这个主题共有 2 回复 / 1 页 [ ]  发表新帖子  回复该主题贴
rainerWJY

悄悄话
发表文章: 18
注册时间: 2007年05月12日 23:16
hibernate对象映射的一个问题。 2007年05月14日 12:30 本帖网址 发送到手机 回复
最近在研究Hibernate
但是我的书上面对有一个地方讲解的并不太好。
设想这样一个场景,我需要用composite组合的设计模式
把picture的几个实例与para的几个实例按照顺序组合成一个text对象。
有一个Text(-id:String;-name:String;)类,
它由Picture(-url:String;-height:int;-weight:int;text_id:String)类与Paragragh(para:String;-text_id:String)类组成,也就是说,在hbm.xml文件中可以选用集合组件映射(component映射)或者one-to-many的模式
如果用集合组件映射,那么Text.hbm.xml文件中应该怎么来写包含关系呢?
我需要用一个list来保证Text与两个对象(picture对象与Paragraph对象)保持联系,并且最关键的是pic的实例与para的实例必须保证有正确的顺序,而不能只是pic与para实例组的内部能够保持正确的顺序。
参考书中只给了一个对象与另一个对象之间的组合的例子,如果一个对象和另外两个对象用list来组合应该怎么设计Text.hbm.xml呢?

附一个书中组合的例子按照上面的类图中的两个对象的组合关系(Text对Picture)
<list name="pic" table="picture">
<k** column="text_id"/>
<composite-element
class="Picture">
<property name="url" column="rul"/>
<property name="weight" column="weight"/>
<property name="height" column="height"/>
</composite-elemnt>
</list>

但这只是两个对象之间的组合。。如果我希望按照上面说的三个对象Text同时维护Picture与paragragh里面的text_id值的组合,应该怎么来写hbm.xml呢?

可能问题让我描述得有点复杂了。。希望能看懂的高手们给个解释~
谢过~
banq

悄悄话
发表文章: 9216
注册时间: 2002年08月03日 17:08
回复:hibernate对象映射的一个问题。 2007年05月15日 15:47 本帖网址 发送到手机 回复
使用Set配置,如下;


<set name="someNames" table="some_names" lazy="true">
<k** column=
"id"/>
<composite-element class=
"eg.Name"> <!-- class attribute required -->
<property name=
"initial"/>
<property name=
"first"/>
<property name=
"last"/>
</composite-element>
</set>

rainerWJY

悄悄话
发表文章: 18
注册时间: 2007年05月12日 23:16
re:hibernate对象映射的一个问题。 2007年05月15日 20:23 本帖网址 发送到手机 回复
恩~没看懂我的问题啊?banq同志。。
您给我的EX也是维护一组对象(someNames实例的类与这个文件所映射的类之间的关系。。)
我却需要用一个类来维持两个类之间的组合

比如表Text中插入了一幅画和一段文字和另一幅画
id|title
1 |A title

这个表写入的时候
表picture
id|text_id|contant
2 | 1 |PicUrl1
4 | 1 |PicUrl2

表paragraph
id|text_id!contantPara
3 | 1 |somewords

最后设计出来按照Hibernate的composite配置方式应该出现类似这样的效果,只不过所有id都由hex算出。

我主要是不知道一个对象由两个对象乃至更多对象组合,并且要求这些组合对象中的所有对象顺序必须正确的时候应该怎么设计Hibernate呢。
如果这个用java写,可以很容易的用list来达到效果,也就是组合模式应该怎么对应持久化以后的数据库呢?
这个主题有 2 回复 / 1 页 [ ]
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表    返回页首返回页首
???en_US.forumThreadNext.name??? 下一主题
google yahoo 新浪ViVi 365Key网摘 天极网摘 CSDN网摘 添加到百度搜藏 POCO网摘 博采网摘
热点TAG: AOP cache DDD EJB 集群 设计模式 Hibernate IOC JiveJdon OO RBAC Spring Struts
查询本论坛内 回复超过的热门帖子
快速发表回复
标题
 
粗体 斜体 下划线 插入图片 插入代码 插入url链接 插入附件
内容
 

手机阅读 add to google add to yahoo
解惑之道在J道 ,打造中国最具影响力的的企业软件社区
OpenSource JIVEJDON v3.0 Powered by JdonFramework Code © 2002-08 jdon.com

anti spam