前面,我们完成了商品列表的展示,本篇文章我们完成商品类目选择的功能。可以看到,新增商品的时候,类目选择弹框是空白的。

还是像之前说的那有,我们侧重于后台,至于前台功能我们不详述。

1、新增接口ItemCatService,代码如下package com.codingwhy.service;

import com.codingwhy.pojo.EasyUITreeNode;

import java.util.List;

public interface ItemCatService {

List getCatList(long parentId);

}

代码路径如下图所示

2、新增接口ItemCatService的实现类ItemCatServiceImpl,具体代码如下package com.codingwhy.service.impl;

import com.codingwhy.mapper.TbItemCatMapper;

import com.codingwhy.pojo.EasyUITreeNode;

import com.codingwhy.pojo.TbItemCat;

import com.codingwhy.pojo.TbItemCatExample;

import com.codingwhy.service.ItemCatService;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Service;

import java.util.ArrayList;

import java.util.List;

@Service

public class ItemCatServiceImpl implements ItemCatService {

@Autowired

private TbItemCatMapper itemCatMapper;

@Override

public List getCatList(long parentId) {

//创建查询条件

TbItemCatExample example = new TbItemCatExample();

TbItemCatExample.Criteria criteria = example.createCriteria();

criteria.andParentIdEqualTo(parentId);

//根据条件查询

List list = itemCatMapper.selectByExample(example);

List resultList = new ArrayList<>();

//把列表转换成treeNodelist

for (TbItemCat tbItemCat : list) {

EasyUITreeNode node = new EasyUITreeNode();

node.setId(tbItemCat.getId());

node.setText(tbItemCat.getName());

node.setState(tbItemCat.getIsParent()?"closed":"open");

resultList.add(node);

}

//返回结果

return resultList;

}

}

代码路径如下图所示

3、新增ItemCatController控制器类,具体代码如下package com.codingwhy.controller;

import com.codingwhy.pojo.EasyUITreeNode;

import com.codingwhy.service.ItemCatService;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestParam;

import org.springframework.web.bind.annotation.ResponseBody;

import java.util.List;

@Controller

@RequestMapping("/item/cat")

public class ItemCatController {

@Autowired

private ItemCatService itemCatService;

@RequestMapping("/list")

@ResponseBody

private List getCatList(@RequestParam(value="id",defaultValue="0")Long parentId) {

List list = itemCatService.getCatList(parentId);

return list;

}

}

代码路径如下图所示

4、最后,重新运行项目,再点“类目选择”按钮,可以看到类目选择里面,数据就出来了。

java商品类_商品类目选择功能开发相关推荐

  1. java商品销售_商品销售系统(Java).doc

    淮海工学院计算机工程学院 实验报告书 课程名:<面向对象程序设计> 实验名称: Java深入面向对象编程 商品销售系统 班 级: 软件081 组 长: 组 员: 李宏志. 谢超 一.实验目 ...

  2. java 通配符 类_关于类:具有多个类的Java泛型通配符

    我想要一个类对象,但是我想要强制它所代表的任何类来扩展类A和实现接口B. 我能做到: Class extends ClassA> 或: Class extends InterfaceB> ...

  3. java电脑类_计算机类在Java中的设计于实现码

    计算机类在Java中的设计于实现码 问题描述: 一台计算机是由主板.CPU.显卡.声卡等部件组成的,这些部件通过接口可以直接安插在主板的插槽上,也就是说只要将这些部件简单的安插在一起就可以成功组装出一 ...

  4. java元类_元类 - 一心不乱 - 博客园

    我们使用class机制产生的类,然后在通过类产生的对象 而类实际上都是通过type来实现的 首先确定type里需要添加哪些元素 class_name = 'A'   类名 class_base = ( ...

  5. c++ 嵌套私有类_嵌套类和私有方法

    c++ 嵌套私有类 当您在另一个类中有一个类时,他们可以看到彼此的private方法. 在Java开发人员中并不为人所知. 面试过程中的许多候选人说, private是一种可见性,它使代码可以查看成员 ...

  6. mysql存储商品详情_商品详情页系统架构

    一般的电商演变: 商品详情页系统架构演进历程 第一个版本 架构设计 J2EE+Tomcat+MySQL 动态页面,每次请求都要调用多个依赖服务的接口,从数据库里查询数据,然后通过类似JSP的技术渲染到 ...

  7. java log 封装_工具类之LogUtils

    安卓开发离不开记录log日志,封装了一份简单的日志工具类,具有设置日志总开关,是否写入文件,日志过滤器和自定义标签,锁定打印log的类.函数名及行号,初始化有可以使用init函数也可以使用建造者模式, ...

  8. java runnable 匿名_匿名类实现Runnable接口 | 学步园

    15.2.3  使用Runnable接口 我们知道,Java中的类只能够是单继承,也就是说,如果一个类为了使用线程而继承了Thread类,它就不能再继承别的类了.这很可能给编程带来不便.本节中介绍的就 ...

  9. 数据库decimal对应java什么类型_数据库类型和java类型对应关系 | 学步园

    类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述 VARCHAR  L+N  VARCHAR  java.lang.String 12 CHAR N CHAR java. ...

最新文章

  1. python 1033 旧键盘打字 (20 分)
  2. 0314互联网新闻 | 陌陌秘密发布6款产品;白熊求职完成数百万元天使轮融资
  3. 如何在 .NETCore 中修改 QueryString ?
  4. jvm线程分析命令_JVM:如何分析线程转储
  5. 谷歌开源 Python Fire:可自动生成命令行接口
  6. 教程系列——用模板快速上线一个HR 服务中心
  7. Luogu P1525 【关押罪犯】
  8. 【云速建站】页面产品维护简述
  9. Spark读Hive分区表报错:Caused by: org.apache.hadoop.mapred.InvalidInputException: Input path does not exist
  10. Bootable USB Stick
  11. Linux音视频学习--常见的音视频传输协议及基本概念介绍
  12. 青少年计算机等级测试内容,青少年人工智能技术水平测试一级等级考试介绍
  13. 快速将PDF转换为图片:使用在线转换器的步骤
  14. linux安装tesseract支持tess4j图片识别
  15. 图形界面介绍Floorplan ToolBox
  16. [转载]华为的云计算转型:逼出来的开放
  17. java四种权限修饰符 (private 、default(缺省)、prote、public)适用范围
  18. 刘强东的代码水平如何?网友:95年一个晚上赚5万
  19. 十一年磨一剑:中科大数学教授成功证明微分几何学两大猜想
  20. R语言学习笔记 07 Probit、Logistic回归

热门文章

  1. CentOS配置DNS方法
  2. Android Camera硬件结构组成(一)之 手机摄像头的组成结构和工作原理
  3. 邮件合并批量制作邀请函
  4. 电脑文件自动备份到移动硬盘,怎么设置?
  5. 了解数据的发展历程--大数据简史
  6. 生产内存溢出定位分析
  7. 2022国赛数学建模思路 - 案例:线性优化-粒子群算法
  8. Bootm启动流程分析
  9. Android 欢迎引导页的魅力
  10. STM32驱动BH1750模块