电商概念及表结构分析
2.1 电商概念 SPU与 SKU
SPU = Standard Product Unit ( 标 准 产 品 单 位 ) SPU 是商品信息聚合的最小单位,是一组可复用、易检索的标准化信息的集合,该集合描述了一个产品的特性。
通俗点讲,属性值、特性相同的商品就可以称为一个 SPU。
例如:
iphone7 就是一个 SPU,与商家,与颜色、款式、套餐都无关。
SKU=stock keeping unit(库存量单位)
SKU 即库存进出计量的单位, 可以是以件、盒、托盘等为单位。
SKU 是物理上不可分割的最小存货单元。在使用时要根据不同业态,不同管理模式来处理。在服装、鞋类商品中使用最多最普遍。
例如:
纺织品中一个 SKU 通常表示:规格、颜色、款式。
2.1 表结构分析
Tb_goods 商品表

商家后台-商品录入【基本功能】
3.1 需求分析
在商家后台实现商品录入功能。包括商品名称、副标题、价格、包装列表、售后服务

3.1 后端代码
3.1.1 实体类
创建组合实体类 goods

public  class  Goods  implements  Serializable{private  TbGoods  goods;//商品 SPUprivate  TbGoodsDesc  goodsDesc;//商品扩展private  List<TbItem>  itemList;//商品 SKU 列表//getter    and  setter 方法......}

3.1.1 数据访问层
由于我们需要在商品表添加数据后可以得到自增的 ID,所以我们需要在 TbGoodsMapper.xml
中的 insert 配置中添加如下配置

<selectKey  resultType="java.lang.Long"  order="AFTER"  keyProperty="id"> SELECT  LAST_INSERT_ID()  AS  id
</selectKey>

3.1.1 服务接口层
修改 pinyougou-sellergoods-interface 的 GoodsService 接口 add 方法

/*** 增 加*/public  void  add(Goods  goods);

3.2.4服务实现层
修改 pinyougou-sellergoods-service 的 GoodsServiceImpl.java

@Autowiredprivate  TbGoodsDescMapper  goodsDescMapper;/*** 增 加*/ @Override
public  void  add(Goods  goods)  {goods.getGoods().setAuditStatus("0");//设置未申请状态 goodsMapper.insert(goods.getGoods());
goods.getGoodsDesc().setGoodsId(goods.getGoods().getId());//设置 IDgoodsDescMapper.insert(goods.getGoodsDesc());//插入商品扩展数据}

3.2.5控制层
修改 pinyougou-shop-web 工程的 GoodsController 的 add 方法

/***增加*@param  goods*@return
*/ @RequestMapping("/add")
public  Result  add(@RequestBody  Goods  goods){//获取登录名String  sellerId  =
SecurityContextHolder.getContext().getAuthentication().getName();goods.getGoods().setSellerId(sellerId);//设置商家 IDtry {goodsService.add(goods);return  new  Result(true,  "增加成功");}  catch  (Exception  e)  { e.printStackTrace();
return  new  Result(false,  "增加失败");}}

转载于:https://blog.51cto.com/13517854/2160303

Java之品优购课程讲义_day05(4)相关推荐

  1. Java之品优购课程讲义_day05(8)

    5.1 最简单的 FastDFS架构 5.1 FastDFS安装 FastDFS 安装步骤非常繁琐,我们在课程中不做要求.已经提供单独的<FastDFS 安装部署文档>供学员们课后阅读. ...

  2. Java之品优购课程讲义_day05(6)

    4.商家后台-商品录入[商品介绍] 4.1 需求分析 实现商品介绍的录入,要求使用富文本编辑器 4.2 富文本编辑器介绍 富文本编辑器,Rich Text Editor, 简称 RTE, 它提供类似于 ...

  3. Java之品优购课程讲义_day19(6)

    品优购-秒杀下单 4.1 需求分析 商品详细页点击立即抢购实现秒杀下单,下单时扣减库存.当库存为 0 或不在活动期 范围内时无法秒杀. 4.2 后端代码 4.2.1 服务接口层 修改 pinyougo ...

  4. Java之品优购课程讲义_day01(8)

    4.1.1 商家管理后台 构建 web 模块 pinyougou-shop-web 与运营商管理后台的构建方式类似.区别: (1)定义 tomcat 的启动端口为 9102 (2)springmvc. ...

  5. Java之品优购课程讲义_day17(2)

    结算页-收件人地址选择 2.1 需求与数据库分析 2.1.1 需求描述 在结算页实现收件人地址选择功能 2.1.2 数据库结构分析 Tb_address 为地址表 2.1 准备工作 2.1.1 生成代 ...

  6. Java之品优购课程讲义_day16(2)

    2.1 后端控制层 实现思路: (1)从 cookie 中取出购物车 (2)向购物车添加商品 (3)将购物车存入 cookie pinyougou-cart-web 工程新建 CartControll ...

  7. Java之品优购课程讲义_day20(5)

    资源过滤与变量替换 修改 pom.xml ,在 build 节点中添加如下配置 <filters><filter>src/main/resources/filters/db_$ ...

  8. Java之品优购课程讲义_day20(2)

    秒杀商品列表的增量更新 每分钟执行查询秒杀商品表,将符合条件的记录并且缓存中不存在的秒杀商品存入缓存 /*** 刷新秒杀商品 */@Scheduled(cron="0 * * * * ?&q ...

  9. Java之品优购课程讲义_day08(7)

    4.1.1 Hash类型操作 创建测试类 TestHash (1)存入值 @Test public void testSetValue(){ redisTemplate.boundHashOps(&q ...

最新文章

  1. poj2002 hash+数学
  2. 优化mysql服务器硬件包括_MySQL优化之一:服务器硬件和操作系统
  3. Docker+Selenium Grid+Python搭建分布式测试环境
  4. flutter打开android界面,在已有Android项目中使用Flutter
  5. Spring JdbcTemplate配置
  6. android 按键消息,Android监听Home按键消息
  7. 20190403vim编辑器week1_day3
  8. SQL语言基础:SQL语言概念知识笔记
  9. 小米11系列最新曝光:国内首发骁龙875 还有独占期
  10. 高观点下的高等数学(数学分析、线性代数)
  11. 【[SDOi2012]Longge的问题】
  12. 如何评价一个专业PKM软件?
  13. #IB TWS编程手记——03-关于IB合约的一二三
  14. Win10的系统重装
  15. [zkaq靶场]命令执行--IBOS协同办公系统通杀漏洞
  16. 西瓜书学习之绪论部分
  17. Codeforces Gym 100015F Fighting for Triangles 状压DP
  18. 小学期助教感受-Funcode游戏编程
  19. Google Material Design 元件库
  20. 凸优化“傻瓜”教程-----凸优化基础知识

热门文章

  1. 查看服务器的性能和使用状态(top,free,df)
  2. win10新建管理员账户_电脑技巧|Win10家庭版如何开启超级管理员账户
  3. cesium 原生抛物线
  4. python读二进制文件博客园_python二进制读写文件
  5. jdbc如何使用oracle数据库连接池,使用JDBC连接池技术连接Oracle数据库
  6. css让image不改变大小_如何改变图片大小
  7. sse java8_Java SSE 服务器推送WEB页面接收数据
  8. stride padding_关于Padding实现的一些细节
  9. python模型预测_《Python机器学习——预测分析核心算法》——1.5 构建预测模型的流程...
  10. JAVA使用bean配置ftp_FTP文件上传(By)java