<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Javadream

    A long way and a dream.
    鏈接: http://forum.javaeye.com/viewtopic.php?t=15829

    這是一個很有趣的東西,無限分類問題。

    這里涉及到沉余數據的問題,如果不這樣做,我們沒法很快的對數據進行搜索。

    我的方法是,在表中加入layerpath,用特別的符號分隔id;加入parentlayer,用來標記父節點;加入level,用來表示這是第幾層(這個可以不要,實際應用中幾乎沒用,反而加大了修改layer的難度)。

    這樣做的優點是把搜索的重任交給了數據庫,比如說查找某個節點下的所有子節點,包括繼承子節點,我們就可以用一刀切的方式取得,而不用遍歷樹的方法,比如我的layerpath的格式如下:
    |1|3|7|8|
    我要查找id為1的所有子節點及繼承子節點:
    SQL:select * from craft where layerpath like '%|1|%';

    而修改一個節點的上下文關系時,僅僅只要修改一個parentlayer就行,當然,我們要在修改更新時檢查節點的繼承關系(這是最重要的)。

    當然,這樣的設計也會有缺點,當類別數據量太多時,就會讓數據庫吃不消,就比如電信的電子黃頁,就有一千多個類別,至少四層,特別是在搜索時,系統的很容易掛掉。解決方法唯有是用緩存。
    主站蜘蛛池模板: 亚洲免费在线视频播放| 国产成年无码久久久免费| 成人A级毛片免费观看AV网站| 亚洲视频精品在线观看| 毛片免费全部播放无码| 亚洲精品熟女国产| 亚洲性线免费观看视频成熟| 亚洲香蕉久久一区二区三区四区| 69天堂人成无码麻豆免费视频| 亚洲国产精品yw在线观看| 高清国语自产拍免费视频国产| 亚洲人av高清无码| 免费又黄又爽又猛的毛片| 久久久精品国产亚洲成人满18免费网站| 亚洲综合精品香蕉久久网| 午夜视频免费在线观看| 国产精品亚洲片夜色在线| 国产精品免费综合一区视频| 色老头综合免费视频| 国产亚洲精品国产| 我们的2018在线观看免费高清| 亚洲小说图区综合在线| 亚洲国产成人爱av在线播放| 中文字幕无码免费久久| 亚洲无圣光一区二区| 日韩免费高清一级毛片在线| selaoban在线视频免费精品| 亚洲午夜在线电影| 免费观看一级毛片| 中国人免费观看高清在线观看二区| 精品无码一区二区三区亚洲桃色| 在线观看91精品国产不卡免费| 国产一区二区三区免费观在线| 亚洲成在人线中文字幕| 亚洲成av人片不卡无码久久| 国产va在线观看免费| 亚洲av综合av一区二区三区| 亚洲精品午夜无码专区| 免费av欧美国产在钱| 91成人免费福利网站在线| 亚洲乱码无人区卡1卡2卡3|