把这两天做动态树的内容记录一下,留着以后看。
要实现的功能,请求页面时,自动显示根目录及其下面的第一层数据,点击第一层数据节点后请求数据库展开其下一层数据,继续点击节点可得到下层数据。一共有5层。
使用的文件有六个,左侧显示树结构的页面(netree.jsp),存放树字符串数据的页面(testNodes.jsp),显示每个节点详细信息的页面(main.jsp),各节点详细信息的action(getDetailAction.java),数据源action(treeAction.java)和执行查询操作的service(navgTreePrc)。其中navgTreePrc类里只是做了查询操作并返回对象list,在此不再贴出。getDetailAction.java跟EXT关系不大,在此也不再贴出。
各个类的功能:
netree.jsp
当netree.jsp页面被请求首次加载时和展开树节点时,页面中根据EXT的中数据源的配置情况自动请求取子节点的treeAction.java。树节点被点击时,请求该节点详细信息的getDetailAction.java(个页面取得数据后把详情信息显示在主页面)
treeAction.java
action收到请求后根据发出请求的节点的node,请求navgTreePrc,得到该节点的子节点对象列表。action把这个列表数据封装成EXT能识别的格式的字符串result。并转向到“存放数据的页面”(testNodes.jsp)。
这个action的配置信息如下:
testNodes.jsp
这个页面从request中取得result字符串,并输出在页面上。