上周末研究了一下Tomcat后台管理目录树的实现,原来是用 Builder 模式实现的,调用 TreeBuilder 来产生 Tree 并放入到 Session 中,然后通过用taglib 在jsp页面调用。几个关键的类是TreeControlNode,TreeControl ,TreeBuilder (TreeBuilder 是个接口,它的实现对应着目录树节点),TreeControlTag 。又看了Xloadtree的代码,自己想用ajax的框架dwr来实现一个动态目录树,默认只显示根节点,当点击节点的时候才加载它的子节点,但这样又有一个问题,如果频繁的点击节点,每一次打开关上节点的动作都必须和服务器端沟通, 也是比较耗费资源的,如果是已经展开的节点就从缓存里面取得,应该可以改善一些,树节点经常会变动也是一个问题。
现在总算是改好的公司的程序了,有时间自己做点东西了,要仔细想想,新建一个 ThoughtAjaxTree 的工程... |