当前位置: 首页 > news >正文

移动网站网站 f型

移动网站,网站 f型,网站工作室,佛山外贸网站建设效果开发中,经常遇到存在树形结构的数据,如行政区划这类数据,一级一级分层,后端需要组装好树形结构数据返回给前端。 由于返给前端的json数据中,如果是叶子节点了,说明它没有子节点,那么就没必要返…

开发中,经常遇到存在树形结构的数据,如行政区划这类数据,一级一级分层,后端需要组装好树形结构数据返回给前端。

由于返给前端的json数据中,如果是叶子节点了,说明它没有子节点,那么就没必要返回chirldren 属性给前端了,此时只需要加一个注解即可:@JsonInclude(JsonInclude.Include.NON_EMPTY),该注解会自动判断集合是否为空,为空的话就不返回给前端展示了。如果是String类型的属性的话,就使用@JsonInclude(JsonInclude.Include.NON_NULL)注解

实体类:

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;
import lombok.experimental.Accessors;/*** <p>* 区域表* </p>** @author sgw* @since 2023年09月06日*/
@Data
@Accessors(chain = true)
@TableName("HJBZ_QY")
public class HjbzQy implements Serializable {private static final long serialVersionUID = 1L;/*** 主键*/@TableId(value = "ID", type = IdType.AUTO)private String id;/*** 区域名称 0表示顶级区域*/@TableField("QYMC")private String qymc;/*** 区域编码 0表示顶级区域*/@TableField("QYBM")private String qybm;/*** 父级区域名称*/@TableField("PARENT_QYMC")private String parentQymc;/*** 父级ID*/@TableField("PID")private String pid;/*** 封装树结构数据* exist设置该属性为 false,表示在查询中不使用该字段*  @JsonInclude(JsonInclude.Include.NON_EMPTY): 为空时就不返回给前端了(说明是叶子节点了,没必要返给前端一个空集合)*/@JsonInclude(JsonInclude.Include.NON_EMPTY)@TableField(exist = false)List<HjbzQy> chirldren = new ArrayList<>();
}
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ts.hjbz.entity.HjbzQy;
import com.ts.hjbz.dao.HjbzQyMapper;
import com.ts.hjbz.service.HjbzQyService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.ArrayList;
import java.util.List;/*** <p>* 区域表 服务实现类* </p>** @author sgw* @since 2023年09月06日*/
@Service
public class HjbzQyServiceImpl extends ServiceImpl<HjbzQyMapper, HjbzQy> implements HjbzQyService {@Autowiredprivate  HjbzQyMapper hjbzQyMapper;@Overridepublic List<HjbzQy> getDetailTree() {QueryWrapper<HjbzQy> wrapper = new QueryWrapper<>();List<HjbzQy> hjbzQyList= hjbzQyMapper.selectList(wrapper);//顶级节点的pid是0List<HjbzQy> tree = createTree(hjbzQyList, "0");return tree;}/*** 递归建立树形结构 (算法)* @param lists* @param pid* @return*/private List<HjbzQy> createTree(List<HjbzQy> lists, String pid) {List<HjbzQy> tree = new ArrayList<>();for (HjbzQy qy : lists) {if (qy.getPid() .equals(pid) ) {qy.setChirldren(createTree(lists,qy.getId()));tree.add(qy);}}return tree;}
}
http://www.sczhlp.com/news/53336/

相关文章:

  • 网站栏目做树形结构图网上建设银行网站首页
  • 八里庄网站建设张雪峰谈工业设计
  • 淘宝是什么语言做的网站网站建设项目的生命周期
  • 搭建电商网站网站制作主要公司
  • 城中网站制作iis建设的网站无法访问
  • 自己做的网站打不开是什么原因做网站策划营销推广
  • 做排版的网站品牌注册证
  • 南京建站公司网站怎样才能做自己的网站
  • 做调像什么网站找活长沙网站优化外包服务
  • 开源网站内容管理系统短视频动画制作
  • 防做网站视频郑州网站建设培训
  • 大语言模型自动评分可靠性研究
  • 公司网站要多少钱模板网站建设平台
  • 免费做店招哪个网站好站长工具之家seo查询
  • 昆山智能网站建设深圳福田有哪些公司
  • 帝国软件怎么做网站网络营销模式案例分析
  • linux wordpress建站教程快速排名程序
  • 电子商务网站建设过程范文建立主题网站的知识点
  • 甘露园网站建设互联网创业项目怎么推广
  • 免费空间已经注册 怎么做网站电子商务网站建设项目
  • 网站建设公司福州网站建设过程与思路
  • 大型网站制作公司飞数和京东一样的网站
  • 序列化保存实现思路
  • 网站用社交图标做链接侵权吗贵州城市建设网站
  • wap网站制作第三方网站建设
  • 网站建设与管理的发展网站需要几个人
  • 网站中的打赏怎么做的外贸网站如何做推广多少钱
  • 有没有可以在网站上做试卷的商贸有限公司简介
  • 商城网站建设都有哪些类型自动做网站的ai
  • 番禺制作网站系统网站开发语言格式化标记语言