8.4-高并发下的互联网电商购物车实战-相关VO类和数据准备—小

2021-11-17  本文已影响0人  小滴极客编程学习

8.4-高并发下的互联网电商购物车实战-相关VO类和数据准备


高并发下的互联网电商购物车实战-相关VO类和数据准备

简介:高并发下的互联网电商购物车实战-相关VO类和数据准备

VideoDO类

CartItemVO

public class CartItemVO {

   /**

    * 商品id

    */

   private Integer productId;

   /**

    * 购买数量

    */

   private Integer buyNum;

   /**

    * 商品标题

    */

   private String productTitle;

   /**

    * 图片

    */

   private String productImg;

   /**

    * 商品单价

    */

   private int price ;

   /**

    * 总价格,单价+数量

    */

   private int totalPrice;

   public int getProductId() {

       return productId;

   }

   public void setProductId(int productId) {

       this.productId = productId;

   }

   public Integer getBuyNum() {

       return buyNum;

   }

   public void setBuyNum(Integer buyNum) {

       this.buyNum = buyNum;

   }

   public String getProductTitle() {

       return productTitle;

   }

   public void setProductTitle(String productTitle) {

       this.productTitle = productTitle;

   }

   public String getProductImg() {

       return productImg;

   }

   public void setProductImg(String productImg) {

       this.productImg = productImg;

   }

   /**

    * 商品单价 * 购买数量

    * @return

    */

   public int getTotalPrice() {

       return this.price*this.buyNum;

   }

   public int getPrice() {

       return price;

   }

   public void setPrice(int price) {

       this.price = price;

   }

   public void setTotalPrice(int totalPrice) {

       this.totalPrice = totalPrice;

   }

}

CartIVO

public class CartVO {

   /**

    * 购物项

    */

   private List<CartItemVO> cartItems;

   /**

    * 购物车总价格

    */

   private Integer totalAmount;

   /**

    * 总价格

    * @return

    */

   public int getTotalAmount() {

       return cartItems.stream().mapToInt(CartItemVO::getTotalPrice).sum();

   }

   public List<CartItemVO> getCartItems() {

       return cartItems;

   }

   public void setCartItems(List<CartItemVO> cartItems) {

       this.cartItems = cartItems;

   }

}

数据源层

@Repository

public class VideoDao {

   private static Map<Integer,VideoDO> map = new HashMap<>();

   static {

       map.put(1,new VideoDO(1,"工业级PaaS云平台+SpringCloudAlibaba 综合项目实战(完结)","https://xdclass.net",1099));

       map.put(2,new VideoDO(2,"玩转新版高性能RabbitMQ容器化分布式集群实战","https://xdclass.net",79));

       map.put(3,new VideoDO(3,"新版后端提效神器MybatisPlus+SwaggerUI3.X+Lombok","https://xdclass.net",49));

       map.put(4,new VideoDO(4,"玩转Nginx分布式架构实战教程 零基础到高级","https://xdclass.net",49));

       map.put(5,new VideoDO(5,"ssm新版SpringBoot2.3/spring5/mybatis3","https://xdclass.net",49));

       map.put(6,new VideoDO(6,"新一代微服务全家桶AlibabaCloud+SpringCloud实战","https://xdclass.net",59));

   }

   /**

    * 模拟从数据库找

    * @param videoId

    * @return

    */

   public VideoDO findDetailById(int videoId) {

       return map.get(videoId);

   }

}

json工具类

public class JsonUtil {

   // 定义jackson对象

   private static final ObjectMapper MAPPER = new ObjectMapper();

   /**

    * 将对象转换成json字符串。

    * @return

    */

   public static String objectToJson(Object data) {

       try {

           String string = MAPPER.writeValueAsString(data);

           return string;

       } catch (Exception e) {

           e.printStackTrace();

       }

       return null;

   }

   /**

    * 将json结果集转化为对象

    *

    * @param jsonData json数据

    * @param clazz 对象中的object类型

    * @return

    */

   public static <T> T jsonToPojo(String jsonData, Class<T> beanType) {

       try {

           T t = MAPPER.readValue(jsonData, beanType);

           return t;

       } catch (Exception e) {

           e.printStackTrace();

       }

       return null;

   }

}

《小滴课堂-Redis6学习笔记》

上一篇下一篇

猜你喜欢

热点阅读