Monthly Archives: March 2021

  • SpringCloud Alibaba微服务商城项目(十二):商品三级分类功能-获取递归树形数据和网关路由设置与跨域

    目录: 获取属性数据接口打通 网关路由与路径重写 统一跨域的处理 1. 获取属性数据接口打通 CategoryController: /** * 查出所有分类以及子分类,树形结构返回 * 1 查出所有数据不需要参数 */ @RequestMapping("/list/tree") public R list(){ // PageUtils page = categoryService.queryPage(params); List<CategoryEntity> list = categoryService.listWithTree(); return R.ok().put("data", list); } CategoryServiceImpl (service接口实现类,采用了反应式编程): @Override public List<CategoryEntity> listWithTree() { // 1. 查出所有分类 // baseMapper可以作为CategoryDao使用,其次我们也可以用autowired引入Dao层,第一种baseMapper请看extends ServiceImpl这个类 List<CategoryEntity> listCats = categoryDao.selectList(null); // 2. 组装成树形结构 //2.1 先找到一级分类 // List<CategoryEntity> level1Menus = listCats.stream().filter(categoryEntity -> // categoryEntity.getParentCid() == 0 // ).collect(Collectors.toList()); //2.2 类的私有方法找到分类的子分类(递归操作 可能会有好几层) List<CategoryEntity> level1Menus = listCats.stream().filter(categoryEntity -> categoryEntity.getParentCid() == 0 ).map(menu -> { menu.setChildren(getChildrens(menu, listCats)); return menu; }).sorted((a,b)->{ return ( a.getSort() == null ?…

    March 26, 2021 0 0

Contact Us

在线咨询:点击这里给我发消息

邮件:814489173@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code