包含数据库设计思路及jsp操作思路这个问题具有代表性  建议置顶!说明:递归就不要讨论了 (数据量大了反应很慢的)
      数组可以实验

解决方案 »

  1.   

    多级分类 lz 可以这样解决:第一种方法:数据库的设计可以这样:分类id,分类code,分类名称.....这三个是必须的,分类的code以点的形式分开,列入一级分类:01 下级别分类:01.01 ....然后查询下级分类的时候用 01.% and code.length<6 and code.length>3 这样就找出来啦组装可以用dtree.js,网上很多,可以去下载一个看看,还可以用动态树是用ajax实现的。第二种方法:数据库设计可以这样:分类id,父id,分类名称.....这样查询就好查询啦,直接找父id等于查询id就可以了也可以用oracle的自带便利函数,执行效率很高的。组装也可以用dtree.js 和动态树。
      

  2.   

    第二种,效率更高的办法是改变所有位于新节点右侧的数值。举例来说:我们想增加一种新的水果"Strawberry"(草莓)它将成为"Red"节点的最后一个子节点。首先我们需要为它腾出一些空间。"Red"的右值应当从6改成8,"Yellow 7-10 "的左右值则应当改成 9-12。 依次类推我们可以得知,如果要给新的值腾出空间需要给所有左右值大于5的节点 (5 是"Red"最后一个子节点的右值) 加上2。 感觉这歌有点麻烦 那删除是不是也要从新更新左右值~~~~~~