MyCat - 商品管理 - 根据 ID 查询 SKU 信息 | 学习笔记

简介: 快速学习 MyCat - 商品管理 - 根据 ID 查询 SKU 信息

开发者学堂课程【全面讲解开源数据库中间件 MyCat 使用及原理(四):MyCat - 商品管理 - 根据 ID 查询 SKU 信息】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/758/detail/13316


MyCat - 商品管理 - 根据 ID 查询 SKU 信息

前言:

条件分页查询接口开发好之后,重启 Console 微服务,对已开发的接口进行测试。

这里用到的是 post 请求,当进行全端的请求时也要以 post 形式进行,要想发起post 请求则需要借助其他工具或者自己写一个表单进行提交。

 

例:利用接口测试工具 postman 进行

地址是"/search ((page]/{size)”

之后在 postman 工具中在 Get 接口后进行请求http://localhost:9001/spu/search/1/10,

之后把 get 请求更改为 post 请求,

注意:这里还需传递对应的信息:searchMap 即查询条件。

假如在 Body 中传递 JOSN 格式的空数据。如图:

image.png

若为空数据,即代表没有选择任何的查询条件,但查询时仍然能查询到商品。

如图:

image.png

查询结果的总条数为 7547 条, 10 条记录。

若把 10 换为 1 再查询,如图:

http:/localhost:9001/spu/search/1/1

查询结果的总条数依旧是7547条,但且只有一条记录。

测试条件查询情况

在 JSON 中编制代码 name,name 是模糊匹配,根据名称查询,假如名称为“全网通”。

查询后的总记录树数为 334 条,所展示出的记录都含有“全网通”名称。

image.png

若用副标题进行查询,则在原有的基础上再编制代码 caption。

之后找到商品列表中的副标题,若副标题为“智慧摄影”(注意:查询时必须满足含有“全网通”和“智慧摄影”的商品,否则查询无效)

之后进行查询。

image.png

查询结果为 1 条。这就说明,此接口测试通过。

通过之后则需要开发最后一个接口:SKU。

Sku 和 spu 的区别:

Spu 是标准产品单元,一个 spu 包含若干个 sku

步骤1、将 spu 切换为 sku

操作如下:

V_parent V_ service_goods main java cn.itcast.goods

mapper.

步骤2、建立 SkuMapper 接口

鼠标右击 mapper,左击选项 NEW,左击选项 Java Class,命名为 SkuMapper。

步骤3、声明方法

在 skumapper 接口中生成 public 方法并编制代码 publio TbSku findById(String skuid)。

并在上方编制注解“根据 ID 查询 sku 信息”。

*根据 ID 查询 SKU 信息

*@param skuid

*@return

*/

public TbSku findBytd(String skuid);

步骤4、编制映射配置文件

复制 cn.itcast.goods.mapper 并重新命名为 Skumapper。如图:

image.png

确认之后,将代码第三行的 spumapper 改为 skumapper。

并将第三行以下的 spumapper 的代码删掉。

如图:

image.png

并声明 select 语句,编制代码

<select id-"findById"parameterType="java.lang.String"resultMap-""></select>。

由于实体类 tbsku 和数据库 createTime 的字段并非完全对应,所以仍要声明一个skumap

<select id-"findById"parameterType-"java.lang.String"resul tMap="skuMap">

并编写语句:select * from tb_sku where id=#{skuid}。

因为上一段编码中用到了skuMap,所以需要在上方声明一个skuMap。

<resultMap id="skuMap"type="cn.itcast.model.TbSku">

并摞列类中的属性和表中的对应关系。

操作如下:

直接找到笔记,在笔记当中的配置直接拷贝到代码中即可。如图:

image.png

步骤5、编写 service 接口

在 service 中新建立一个 Javaclass 接口,用 Interface,并命名为 skuservice。如图:

image.png

编制代码public TbSku findById(String id)。

其作用为根据 ID 查询 sku 信息。

/**

*根据 ID 查询 SKU 信息

*@param id

*@return

*/

public Tbsku findById(String id);

接着声明一个 skuservice 的实现类 SkuServicelmpl。如图:

image.png

实现 skuservice 并加上注解 service。

public class skuserviceImpl implements Skuservice{

@override

public Tbsku findById(String id){

return null;

编制代码 private SkuMapper skuMapper 并传递 Autowired。

@Autowired

private SkuMapper skuMapper;

@override

public TbSku findById(String id){

return null;

将代码 return 后边的 null 改为 skuMapper.findbyId(id)。

步骤6、编写 controller 层逻辑代码

在 controller 新建接口 javaclass 命名为 skucontroller。

package cn.itcast.goods.controller;

public class skuController{

新建声明 Restcontroller 和 RequestMapping("/sku")

public class skucontroller{

注入代码 skuservice skuservice  Autowired 进行注入。

并声明方法 public 和返回值 result 上方声明 GetMapping("/{id}")|。

@GetMapping("/{id}"].

public Result findById(String id){

此处 ID 是用 URL 形式传递所以需要在方法的前面加上注解PathVariable(“id”)。

public Result findById (@pathVariable("id")String id){

通过 skuservice.findById(id) 就能拿到当前的 sku。如图:

image.png

编写代码 return new Result(flag:true,Statuscode.oK,message:“查询成功",sku)。

步骤7、启动当前的 Console 并测试接口

随便寻找一个 sku 的 ID 例如:100000006163。

将之前的链接更改为:

http://localhost:9001/sku/100000006163

查询成功后,说明 sku 信息已经拿到了,即测试成功。

相关文章
|
6月前
|
存储 JSON API
批量采集抖音商品详情数据:推荐你使用API(通过商品id取商品详情商品主图sku属性)
批量采集抖音商品详情,建议使用API接口。步骤包括:注册抖音开放平台获取App Key和Secret,调用商品详情API接口传入商品ID及相关参数,解析返回的JSON获取商品信息(如名称、价格、主图和SKU)。此外,接口列表提供商品搜索、销售量查询、历史价格、订单管理等多种功能。已封装的API接口地址:c0b.cc/R4rbK2,可测试并联系获取SDK文件。
|
JSON 数据格式
谷粒商城--SPU和SKU(分组与属性关联、发布商品、仓库服务)-1
谷粒商城--SPU和SKU(分组与属性关联、发布商品、仓库服务)
54 0
|
测试技术 API 微服务
谷粒商城--SPU和SKU(分组与属性关联、发布商品、仓库服务)-3
谷粒商城--SPU和SKU(分组与属性关联、发布商品、仓库服务)
70 0
|
JSON 前端开发 Java
谷粒商城--SPU和SKU(分组与属性关联、发布商品、仓库服务)-2
谷粒商城--SPU和SKU(分组与属性关联、发布商品、仓库服务)
95 0
|
XML JSON Java
Java实现根据商品ID请求震坤行商品详情数据方法
Java实现根据商品ID请求震坤行商品详情数据方法
|
XML JSON 缓存
Java实现根据商品ID请求西域商城商品详情数据方法
Java实现根据商品ID请求西域商城商品详情数据方法
|
XML JSON 缓存
Java实现根据商品ID请求lazada商品详情数据方法
Java实现根据商品ID请求lazada商品详情数据方法
|
XML JSON 缓存
Java实现根据商品ID请求快手商品详情数据方法
Java实现根据商品ID请求快手商品详情数据方法
|
XML JSON 缓存
Java实现商品ID获取京东商品详情Desc商品描述数据方法
Java实现商品ID获取京东商品详情Desc商品描述数据方法
|
XML JSON 缓存
Java实现商品CID ID获取淘宝商品分类数据方法
Java实现商品CID ID获取淘宝商品分类数据方法