该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2004-12-21
xml难解析,干吗用xml呀,关系数据库数据库不好么?
系统大部分都用关系数据库,就一小块用xml,sql查询和xml查找混在一起,岂不是很别扭哟? 树形数据结构的例子在现实也常见的,比如权限管理中组等等。 |
|
返回顶楼 | |
发表时间:2004-12-21
http://dbazine.com/tropashko4.shtml
hibernate blog给的引用。 |
|
返回顶楼 | |
发表时间:2004-12-21
楼上的引用,非常不错!
这不单单是HB的应用(其实我平时的时候也用,只不过没有想到,其实HQL也可以,真是蠢). |
|
返回顶楼 | |
发表时间:2004-12-21
可是……是不是不太直观呢,如果树很庞大的话还可以。
比较小的树迭代一下就够了吧。 |
|
返回顶楼 | |
发表时间:2005-08-12
dkmilk 写道 我是直接改了hibernate让他支持connect by prior
因为我只用oracle. 请问dkmilk 是怎样修改的? unexpected token: connect [from com.adasoft.department.model.SmsDepart t connect by prior t.id = t.parentID start with t.parentID =0]; |
|
返回顶楼 | |
发表时间:2005-08-12
oracle的上面有人贴了,我来补充db2的单条语句:with tree (code,upcode) as (select root.code,root.upcode from codetree root where root.upcode='0000' union all select child.code,child.upcode from tree parent,codetree child where parent.code=child.upcode) select code from tree
其他非主流的另想办法 |
|
返回顶楼 | |
发表时间:2005-08-23
我是通过递归把其子父关系的数据全部取出来然后放在内存中。这样做如果是小数据就没有问题。如果是大数据,比如20万,那么hiberate把这20万个对象全部取出来,放在内存中。机器就这么的死了。我想如果能作成节点加载数据,那么这样应该不会出现类似的问题。不知道有没有更好的方法!!!
|
|
返回顶楼 | |
发表时间:2005-08-23
dkmilk 写道 我是直接改了hibernate让他支持connect by prior
因为我只用oracle. Hibernate是基于LGPL协议发布的,不知你有没有用于商业开发? |
|
返回顶楼 | |
发表时间:2005-08-23
z_jordon 写道 dkmilk 写道 我是直接改了hibernate让他支持connect by prior
因为我只用oracle. Hibernate是基于LGPL协议发布的,不知你有没有用于商业开发? 偶记得LGPL和商业不冲突吧,如果修改了Hibernate,偶只要随商业产品提供修改过的Hibernate源代码即可,商业产品自己的源代码没有必要提供。 有谁可以确认一下? |
|
返回顶楼 | |
发表时间:2005-08-23
建个分类展开表应该就可以了,
该表描述的是父结点与所有子孙节点的关系,每次做增删改的时候要调整这个表,不过hibernate没试过 思路就是以编辑的复杂性换取查询的速度 |
|
返回顶楼 | |