JAVA 递归获取区域全名

import lombok.Data;

/**
* 区域
*/

@Data   //为lombok插件,省去set/get方法

public class Region {

  private String code; // 地区

  private Long parentId; // 上级区域
}

// 类结构在于有个可以关联上级区域的ID,满足递归条件

/**
* 获取某个区域的全名,自动拼接上上级区域名称
* @return
*/
public String getRegionString(Long regionId) {
  if(regionId == null) {
    return "";
  }
  Region region = this.findOne(regionId);
  if(region != null) {
    return getRegionString(region.getParentId()) + region.getName();  //  递归调用方法getRegionString(Long regionId),停止条件设为regionId==null为真
  }
  return "";
}

原文地址:https://www.cnblogs.com/mithrandirw/p/8762867.html