自己寫的一個基於web的java樹形構件(附效果圖)
很久沒來更新Blog了。今天我要呈現自己在用的一個web樹形構件,這是我兩年前的一個作品。
作為程式設計師我們都知道,在web上實現一個樹形展現頁面並不容易,我們可以在網上搜索關於Tree的實現
原理及方法和例項等。
不外乎以下幾種
1.javascript指令碼型,缺點N多,展現靜態的簡單樹還可以用用
這種方式得一次性取完所有資料,然後通過大量指令碼在客戶端來構造,缺點顯而易見,如資料量大;
得事先構造好一定的樹形資料,無論是Xml或是陣列型;操作狀態重新整理頁面後無法保留;在客戶端超過上幾
百上千個Object時的響應速度等等。更別說操作樹了。
2.Applet型別結合JTree的樹。我自己沒用過,可以用這種方式實現。但應該比較複雜,如與WEB容器的交
互或JS指令碼的互動等。
3.ActiveX型別的樹。我沒用過,不作評論,反正要註冊dll,受客戶端影響比較大。
4.由服務端生成的樹,本構件就是採用這種方式。好與不好,請試用:)後自行評論。
本樹形控制元件克服了以上各種型別樹構件的缺點,並自己擴充套件實現了許多新的功能,使用起來也簡單,不過
20來行程式碼,不需要特別的程式碼,而且千篇一律,做了一個,下一個可以Copy上一個的程式碼改改來用。
附個效果圖:
主要實現的功能有
. 自動展現資料庫指定表中的樹形結構資料,不用人工參與。如組織結構表,商品表等等
. 無限制層數
. 重新整理狀態可保留
. 根據節點屬性來顯示指定的圖示,如人的圖示是p.jpg,部門的圖示是u.jpg等
. 通過配置設定來實現,不用特殊程式碼。如什麼新增節點,刪除節點,設定節點圖示等
. 可用作
>樹形展示資料
如組織結構樹
>樹形單選資料,樹形多選資料
如選擇人員或商品等等
. 還有一些其他的功能(由業務需求進行的擴充套件),如設定樹只能葉級有連結,設定只能選擇人員等等
視覺化設計支援