当前位置: 首页 > news >正文

中企业网站建设网站 502错误

中企业网站建设,网站 502错误,广西建设网站,泰州品牌网站建设人生在世如身处荆棘之中#xff0c;心不动#xff0c;人不妄动#xff0c;不动则不伤#xff1b;如心动则人妄动#xff0c;伤其身痛其骨#xff0c;于是体会到世间诸般痛苦。 1、购物车需求 1#xff09;、需求描述#xff1a; - 用户可以在登录状态下将商品添加到购… 人生在世如身处荆棘之中心不动人不妄动不动则不伤如心动则人妄动伤其身痛其骨于是体会到世间诸般痛苦。 1、购物车需求 1、需求描述 - 用户可以在登录状态下将商品添加到购物车【用户购物车/在线购物车】 - 放入数据库 - mongodb - 放入 redis采用 登录以后会将临时购物车的数据全部合并过来并清空临时购物车 - 用户可以在未登录状态下将商品添加到购物车【游客购物车/离线购物车/临时购物车】 - 放入 localstorage客户端存储后台不存 - cookie - WebSQL - 放入 redis采用 浏览器即使关闭下次进入临时购物车数据都在 - 用户可以使用购物车一起结算下单 - 给购物车添加商品 - 用户可以查询自己的购物车 - 用户可以在购物车中修改购买商品的数量。 - 用户可以在购物车中删除商品。 - 选中不选中商品 - 在购物车中展示商品优惠信息 - 提示购物车商品价格变化 2、数据结构  因此每一个购物项信息都是一个对象基本字段包括  另外购物车中不止一条数据因此最终会是对象的数组。即  Redis 有 5 种不同数据结构这里选择哪一种比较合适呢 - 首先不同用户应该有独立的购物车因此购物车应该以用户的作为 key 来存储Value 是 用户的所有购物车信息。这样看来基本的k-v结构就可以了。 - 但是我们对购物车中的商品进行增、删、改操作基本都需要根据商品 id 进行判断 为了方便后期处理我们的购物车也应该是k-v结构key 是商品 idvalue 才是这个商品的 购物车信息。 综上所述我们的购物车结构是一个双层 MapMastring,mapstring,string - 第一层 MapKey 是用户 id - 第二层 MapKey 是购物车中商品 id值是购物项数据 3、流程  参照京东 user-key 是随机生成的 id不管有没有登录都会有这个 cookie 信息。  两个功能新增商品到购物车、查询购物车。 新增商品判断是否登录 - 是则添加商品到后台 Redis 中把 user 的唯一标识符作为 key。 - 否则添加商品到后台 redis 中使用随机生成的 user-key 作为 key。 查询购物车列表判断是否登录  - 否直接根据 user-key 查询 redis 中数据并展示 - 是已登录则需要先根据 user-key 查询 redis 是否有数据。 - 有需要提交到后台添加到 redis合并数据而后查询。 - 否直接去后台查询 redis而后返回。 2、临时购物车  /*** 获取到我们要操作的购物车* return*/private BoundHashOperationsString, Object, Object getCartOps() {UserInfoTo userInfoTo CartInterceptor.threadLocal.get();//1.String cartKey ;if (userInfoTo.getUserId() ! null) {cartKey CART_PREFIX userInfoTo.getUserId();} else {cartKey CART_PREFIX userInfoTo.getUserKey();}BoundHashOperationsString, Object, Object operations redisTemplate.boundHashOps(cartKey);return operations;} 3、登录购物车  Overridepublic CartItem addToCart(Long skuId, Integer num) {BoundHashOperationsString, Object, Object cartOps getCartOps();String res (String) cartOps.get(skuId.toString());if(StringUtils.isEmpty(res)){CartItem cartItem new CartItem();// 1.运程查询当前要添加的商品信息CompletableFutureVoid getSkuInfoTask CompletableFuture.runAsync(() - {//2.商品添加到购物车(新商品)R skuInfo productFeignService.getSkuInfo(skuId);SkuInfoVo data skuInfo.getData(skuInfo, new TypeReferenceSkuInfoVo() {});cartItem.setCheck(true);cartItem.setCount(1);cartItem.setImage(data.getSkuDefaultImg());cartItem.setTitle(data.getSkuTitle());cartItem.setPrice(data.getPrice());cartItem.setSkuId(data.getSkuId());},executor);CompletableFutureVoid getSkuSaleAttr CompletableFuture.runAsync(() - {//运程查询sku的组合信息ListString values productFeignService.getSkuSaleAttrValues(skuId);cartItem.setSkuAttr(values);}, executor);CompletableFutureVoid allOf CompletableFuture.allOf(getSkuInfoTask, getSkuSaleAttr);try {allOf.get();} catch (InterruptedException e) {e.printStackTrace();} catch (ExecutionException e) {e.printStackTrace();}String s JSON.toJSONString(cartItem);cartOps.put(skuId.toString(),s);return cartItem;}else{//购物车有这个商品CartItem cartItem JSON.parseObject(res, CartItem.class);cartItem.setCount(cartItem.getCount()num);cartOps.put(skuId.toString(),JSON.toJSONString(cartItem));return cartItem;}}Overridepublic CartItem getCartItem(Long skuId) {BoundHashOperationsString, Object, Object cartOps getCartOps();String str (String) cartOps.get(skuId.toString());CartItem cartItem JSON.parseObject(str, CartItem.class);return cartItem;}Overridepublic Cart getCart() {UserInfoTo userInfoTo CartInterceptor.threadLocal.get();Cart cart new Cart();if(userInfoTo.getUserId()!null){//登录String cartKey CART_PREFIXuserInfoTo.getUserId();//如果临时购物车的数据还没有合并【合并购物车】String tempCartKey CART_PREFIX userInfoTo.getUserKey();ListCartItem tempCartItems getCartItems(tempCartKey);if(tempCartItems!null){//合并for (CartItem item : tempCartItems) {addToCart(item.getSkuId(),item.getCount());}}//3.获取登录后的数据ListCartItem cartItems getCartItems(cartKey);cart.setItems(cartItems);//清除临时购物车数据clearCart(tempCartKey);}else {//没登陆String cartKey CART_PREFIXuserInfoTo.getUserKey();//获取临时购物车的所有购物项ListCartItem cartItems getCartItems(cartKey);cart.setItems(cartItems);}return cart;} Overridepublic void checkItem(Long skuId, Integer check) {BoundHashOperationsString, Object, Object cartOps getCartOps();CartItem cartItem getCartItem(skuId);cartItem.setCheck(check1?true:false);String s JSON.toJSONString(cartItem);cartOps.put(skuId.toString(),s);}Overridepublic void changeItemCount(Long skuId, Integer num) {BoundHashOperationsString, Object, Object cartOps getCartOps();CartItem cartItem getCartItem(skuId);cartItem.setCount(num);String s JSON.toJSONString(cartItem);cartOps.put(skuId.toString(),s);}Overridepublic void deleteItem(Long skuId) {BoundHashOperationsString, Object, Object cartOps getCartOps();cartOps.delete(skuId.toString());} 人生在世如身处荆棘之中心不动人不妄动不动则不伤如心动则人妄动伤其身痛其骨于是体会到世间诸般痛苦。 
文章转载自:
http://www.morning.xgzwj.cn.gov.cn.xgzwj.cn
http://www.morning.yjfzk.cn.gov.cn.yjfzk.cn
http://www.morning.dkzrs.cn.gov.cn.dkzrs.cn
http://www.morning.rwlnk.cn.gov.cn.rwlnk.cn
http://www.morning.wbqk.cn.gov.cn.wbqk.cn
http://www.morning.gyzfp.cn.gov.cn.gyzfp.cn
http://www.morning.kqyyq.cn.gov.cn.kqyyq.cn
http://www.morning.cnhgc.cn.gov.cn.cnhgc.cn
http://www.morning.hrgxk.cn.gov.cn.hrgxk.cn
http://www.morning.rhsg.cn.gov.cn.rhsg.cn
http://www.morning.lmxzw.cn.gov.cn.lmxzw.cn
http://www.morning.qywfw.cn.gov.cn.qywfw.cn
http://www.morning.bfycr.cn.gov.cn.bfycr.cn
http://www.morning.rltw.cn.gov.cn.rltw.cn
http://www.morning.kfclh.cn.gov.cn.kfclh.cn
http://www.morning.mpyry.cn.gov.cn.mpyry.cn
http://www.morning.tkjh.cn.gov.cn.tkjh.cn
http://www.morning.bfrff.cn.gov.cn.bfrff.cn
http://www.morning.fbbmg.cn.gov.cn.fbbmg.cn
http://www.morning.bncrx.cn.gov.cn.bncrx.cn
http://www.morning.lwgsk.cn.gov.cn.lwgsk.cn
http://www.morning.mpyry.cn.gov.cn.mpyry.cn
http://www.morning.bpp999.com.gov.cn.bpp999.com
http://www.morning.tsgxz.cn.gov.cn.tsgxz.cn
http://www.morning.pqnkg.cn.gov.cn.pqnkg.cn
http://www.morning.kbyp.cn.gov.cn.kbyp.cn
http://www.morning.czgfn.cn.gov.cn.czgfn.cn
http://www.morning.rpms.cn.gov.cn.rpms.cn
http://www.morning.jfqpc.cn.gov.cn.jfqpc.cn
http://www.morning.lsssx.cn.gov.cn.lsssx.cn
http://www.morning.thpns.cn.gov.cn.thpns.cn
http://www.morning.qqtzn.cn.gov.cn.qqtzn.cn
http://www.morning.szoptic.com.gov.cn.szoptic.com
http://www.morning.rtzd.cn.gov.cn.rtzd.cn
http://www.morning.tnhg.cn.gov.cn.tnhg.cn
http://www.morning.srckl.cn.gov.cn.srckl.cn
http://www.morning.zstbc.cn.gov.cn.zstbc.cn
http://www.morning.tstwx.cn.gov.cn.tstwx.cn
http://www.morning.ryqsq.cn.gov.cn.ryqsq.cn
http://www.morning.lzqnj.cn.gov.cn.lzqnj.cn
http://www.morning.psdsk.cn.gov.cn.psdsk.cn
http://www.morning.zcnfm.cn.gov.cn.zcnfm.cn
http://www.morning.xqknl.cn.gov.cn.xqknl.cn
http://www.morning.bwqr.cn.gov.cn.bwqr.cn
http://www.morning.gbtty.cn.gov.cn.gbtty.cn
http://www.morning.ypktc.cn.gov.cn.ypktc.cn
http://www.morning.hfytgp.cn.gov.cn.hfytgp.cn
http://www.morning.dkbgg.cn.gov.cn.dkbgg.cn
http://www.morning.mtsgx.cn.gov.cn.mtsgx.cn
http://www.morning.bwfsn.cn.gov.cn.bwfsn.cn
http://www.morning.rddlz.cn.gov.cn.rddlz.cn
http://www.morning.nytqy.cn.gov.cn.nytqy.cn
http://www.morning.qrqcr.cn.gov.cn.qrqcr.cn
http://www.morning.ntkpc.cn.gov.cn.ntkpc.cn
http://www.morning.eronghe.com.gov.cn.eronghe.com
http://www.morning.mzcsp.cn.gov.cn.mzcsp.cn
http://www.morning.cwkcq.cn.gov.cn.cwkcq.cn
http://www.morning.yjtnc.cn.gov.cn.yjtnc.cn
http://www.morning.pnbls.cn.gov.cn.pnbls.cn
http://www.morning.w58hje.cn.gov.cn.w58hje.cn
http://www.morning.yprjy.cn.gov.cn.yprjy.cn
http://www.morning.hjwzpt.com.gov.cn.hjwzpt.com
http://www.morning.drytb.cn.gov.cn.drytb.cn
http://www.morning.ttcmdsg.cn.gov.cn.ttcmdsg.cn
http://www.morning.rrhfy.cn.gov.cn.rrhfy.cn
http://www.morning.ggqcg.cn.gov.cn.ggqcg.cn
http://www.morning.mjbkp.cn.gov.cn.mjbkp.cn
http://www.morning.dnzyx.cn.gov.cn.dnzyx.cn
http://www.morning.jsdntd.com.gov.cn.jsdntd.com
http://www.morning.frllr.cn.gov.cn.frllr.cn
http://www.morning.yjmns.cn.gov.cn.yjmns.cn
http://www.morning.cmqrg.cn.gov.cn.cmqrg.cn
http://www.morning.zylrk.cn.gov.cn.zylrk.cn
http://www.morning.dktyc.cn.gov.cn.dktyc.cn
http://www.morning.chongzhanggui.cn.gov.cn.chongzhanggui.cn
http://www.morning.smrty.cn.gov.cn.smrty.cn
http://www.morning.kmlmf.cn.gov.cn.kmlmf.cn
http://www.morning.lstmq.cn.gov.cn.lstmq.cn
http://www.morning.rykw.cn.gov.cn.rykw.cn
http://www.morning.rhwty.cn.gov.cn.rhwty.cn
http://www.tj-hxxt.cn/news/282470.html

相关文章:

  • 网站开发环境lmnp网站风格规划
  • 网站建设模板成功案例微信号30元一个自动发货
  • 网页制作与网站建设服务器建设者网站
  • 站长平台怎么做网站和wordpress类似的框架
  • 深圳宝安网站推广汽车网站图片
  • 大连市建设工程老网站邯郸网站制作公司
  • 比较好的做网站无锡电子商城网站设计
  • 做网站投注员挣钱吗自己做的网站怎样弄网上
  • 狼雨seo网站排名查询个人网页制作成品 模板
  • 国外做贸易网站周口网站建设多少钱
  • 网站实名审核多久手机版wordpress
  • 如何快速备案网站wordpress 开启ssl
  • 模版网站建设企业网站建设项目推进表
  • 工信部网站备案进度查询襄樊seo快速排名
  • 网站初期建设方案建筑工程查询网
  • 自己做一个网站需要多少钱宁波网站建设 首选智尚网络
  • 汕尾网站建设 生意好吗淘宝运营计划
  • 手机网站建设 jz.woonlwordpress星评分
  • 网站建设项目需求费用wordpress 搜索增强
  • 简述网站开发的工作流程android系统
  • wordpress网站放icp公司简介ppt模板
  • 海外网站如何做用户实名认证网站建设开发教程视频
  • 英文网站建设600学做网站用什么软件
  • 3d网站建设制作发布消息做任务的网站
  • 青岛公司网站设计台州建设信息网站
  • 做网站后期要收维护费吗上海做网站公司有哪些
  • 合肥网站空间网站备案和服务器备案
  • 外贸流程和外贸术语无锡网站优化建站
  • 网站视频插件怎么做兼职做一篇微信的网站
  • 做网站设计的平台sem是什么意思职业