规格参数组查询的代码实现
生活随笔
收集整理的這篇文章主要介紹了
规格参数组查询的代码实现
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
后端代碼
實體類
在learn-item-interface中添加實體類:
內容:
@Table(name = "tb_spec_group") public class SpecGroup {@Id@GeneratedValue(strategy = GenerationType.IDENTITY)private Long id;private Long cid;private String name;@Transientprivate List<SpecParam> params;// getter和setter省略 } @Table(name = "tb_spec_param") public class SpecParam {@Id@GeneratedValue(strategy = GenerationType.IDENTITY)private Long id;private Long cid;private Long groupId;private String name;@Column(name = "`numeric`")private Boolean numeric;private String unit;private Boolean generic;private Boolean searching;private String segments;// getter和setter ... }在learn-item-service中編寫業(yè)務:
mapper
public interface SpecGroupMapper extends Mapper<SpecGroup> { }controller
先分析下需要的東西,在頁面的ajax請求中可以看出:
-
請求方式:get
-
請求路徑:/spec/groups/{cid} ,這里通過路徑占位符傳遞商品分類的id
-
請求參數(shù):商品分類id
-
返回結果:頁面是直接把resp.data賦值給了groups:
-
那么我們返回的應該是規(guī)格組SpecGroup的集合
代碼:
@RestController @RequestMapping("spec") public class SpecificationController {@Autowiredprivate SpecificationService specificationService;/*** 根據(jù)分類id查詢分組* @param cid* @return*/@GetMapping("groups/{cid}")public ResponseEntity<List<SpecGroup>> queryGroupsByCid(@PathVariable("cid")Long cid){List<SpecGroup> groups = this.specificationService.queryGroupsByCid(cid);if (CollectionUtils.isEmpty(groups)){return ResponseEntity.notFound().build();}return ResponseEntity.ok(groups);} }?
?
service
@Service public class SpecificationService {@Autowiredprivate SpecGroupMapper groupMapper;/*** 根據(jù)分類id查詢分組* @param cid* @return*/public List<SpecGroup> queryGroupsByCid(Long cid) {SpecGroup specGroup = new SpecGroup();specGroup.setCid(cid);return this.groupMapper.select(specGroup);} }頁面訪問測試:
目前,我們數(shù)據(jù)庫只為手機分類(76)提供了規(guī)格組:
我們訪問:http://api.learn.com/api/item/spec/groups/76
然后在后臺系統(tǒng)中測試:
?
總結
以上是生活随笔為你收集整理的规格参数组查询的代码实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 规格参数表结构
- 下一篇: 规格参数查询后台代码实现