根據ID和parentID利用Java遞歸獲取全路徑名稱


如下圖所示,本文參考資源:https://jie-bosshr.iteye.com/blog/1996607  感謝大佬的無私奉獻。

思路: 
定義一個方法getParentName參數為int類型的configId,返回類型為String類型. 
在方法getParentName內部進行如下操作: 
1 根據當前節點configId查詢數據庫,得到一條記錄,存入實體類中。 
2 判斷存入的實體類是否為空,如果不為空,定義變量configName用來存儲當前節點的名稱再跟","用於分割,內部調用getParentName(參數為剛才存入實體類的父節點parentId),定義變量returnConfigName用於存儲方法getParentName的返回值,然后將configName和returnConfigName進行拼接返回. 
如果存入的實體類為空,則返回空. 
方法用例: 

 1 /** 
 2      * 遞歸得到當前節點的所有父節點 
 3      * @param configId 當前節點 
 4      * @return 所有父節點 
 5      * @throws Exception 拋出的異常 
 6      */  
 7     public String getParentName(int configId)throws Exception{  
 8         //和數據庫交互,得到當前節點記錄  
 9         PatrolConfigVO patrolConfigEntity = patrolConfigDao.getPatrolConfigByConfigId(configId);  
10         if(patrolConfigEntity != null){  
11             String configName = patrolConfigEntity.getConfigName()+"mmc";  
12             //參數patrolConfigEntity.getConfigParentId()表示當前節點的父節點ID  
13             String returnConfigName = getParentName(patrolConfigEntity.getConfigParentId());  
14             return returnConfigName+configName;  
15         }else{  
16             return "";  
17         }  
18     }  

以上就是核心代碼。。。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM