模拟京东9
课程回顾
1、 去商品详情页
分析---需要的数据----点击图片时商品的id
1、 需要product ----根据id查询
2、 需要sku ----根据商品的id查询库存列表stock>0 Color-设置到sku中
jsp页面回显
1、 商品正常
2、 回显颜色---- skus sku.color.name(颜色重复)
解决颜色重复将颜色取出放到set容器中---不可以有重复元素---重写hashcode、 equals方法
2、 sku的联动效果
选择颜色
1、 选择颜色框时需将该框变红。 addClass(“selected”)
2、 切换颜色时需要将之前选择颜色清空.removeClass(“selected”)
3、 确定颜色后需要加载该颜色下的尺码信息
<for> sku.colorId==colorId 将尺码信息拼接到html判断中。 选择尺码
1、 选择尺码框需要将该框变红
2、 切换尺码时将之前的选择的尺码颜色清空
3、 确定尺码后就可以确定一条sku确定了一条sku那我们就填充价格信息。
<for>sku.colorId==cId sku.size==size填充价格。
进入详情页时--- trigger
1、 默认选择第一个颜色oncl ick (“#id”:first).cl ick----选择第一个颜色
2、 让它默认选择第一个尺码被选中selected
3、 在遍历时在拼接第一个尺码片段时需要添加selected 使用开关。
3、 Freemarker介绍
模板引擎velocity 模板引擎的技术
原理模板+数据---->生成带有数据的静态页
语法
遍历 <#l istusersas user>${user.name}</#l ist>
引入页面 <#include>
条件判断 <#if>todo1<#else>todo2</#if>
判断是否为空 ${key!}
获取下标 user_index
入门程序
1、 创建Configuration对象
2、 通过Configuration指定模板的位置
3、 通过Configuration获取模板
4、 准备数据
5、 数据+模板-输出带有数据的静态页
4、 将freemarker应用到项目中
之前访问详情页时----数据都是重数据库中查询
通过freemarker生成商品的静态详情页
何时生成静态页商品上架时生成静态页
编写静态化服务程序
1、定义StaticPageServiceindex(rootMap静态页需要的数据 id:作为静态页面名称)
2、编写静态化服务的实现类 @service
获取Configuration对象new ---- sipringmvc支持freema rker----freemarkerConfiguration ---- getConfiguratin ---- 注入freemarkerConfiguration 获取Configuration。好处指定模板的路径指定编码格式
通过Configuration获取模板
准备数据
数据+模板--->生成带有数据的静态页指定位置 servletContext获取路径实现servletContextAware 。 realPath- fi le(/html/product/id.html) 输 出 outoutputStrea mwriter(fi leoutputstream, charset)
通过spring管理静态化服务注入freemarkerConfiguration 指定模板的路径指定编码格式
上架程序
1、 可以直接在商品上架的代码中完成静态页的生成
2、 商品上架时已将id发送到mq中所以我们监听mq中的消息并且消费{根据id获取product、 skus数据并且生成静态页}
3、 cms服务中添加消费者的配置文件自定义一个监听器配置的模式 pubsubDomaintrue
4、 product、 solr中都需要配置pubsubDomain true
课程计划
1、 完成广告tab的环境搭建
2、 完成左侧菜单的树形加载TreeView---jquery插件
3、 大广告的列表查询
4、 大广告的添加
5、 前台系统的大广告的轮播---从数据库中查询
6、 大广告轮播优化添加缓存
1完成广告tab的环境搭建
1.1导入jsp页面
1.2在top.jsp添加广告tab页
1.3完成tab页面的跳转
1.3.1修改jsp页面的请求路径
1.3.2在FrameController添加方法
1.4跳转ad_left页面
1.4.1修改jsp页面的请求路径
1.4.2在controller中添加方法
2完成左侧菜单的树形加载
2.1 TreeView插件
介绍 jquery的一款树形插件。样式 fo lder文件夹 fi le文件
2.2分析position表
1、 点击节点时需要判断是否有子节点如果有就加载该节点下的子节点
2、 如果没有字节点那我们查询该节点广告位下的所有的广告。
2.3加载树形菜单
2.3.1编写service接口、实现类
接口方法返回值 l ist<position>方法中形参parentId。
TreeView默认加载url时默认有个root形参 posit/tree.do?root=”source”
实现类
2.3.2配置dubbo服务
略。
2.3.3编写Controller
3加载广告位下的广告列表
3.1编写service接口、实现类
接口方法定义形参 position_id返回值l ist<ad>接口
实现类
3.2编写controller
3.3 jsp页面回显
4大广告的添加
4.1添加
4.1.1去添加页分析
1、添加页面中需要position_id
2、在添加页添加隐藏域position_id
4.1.2更新controller的list方法
4.1.3修改jsp页面的请求路径
在刚才更新Vultr 新年福利文章的时候突然想到前几天有网友问到自己有在Vultr 注册账户的时候无法用支付宝付款的问题,当时有帮助他给予解决,这里正好顺带一并介绍整理出来。毕竟对于来说,虽然使用的服务器不多,但是至少是见过世面的,大大小小商家的一些特性特征还是比较清楚的。在这篇文章中,和大家分享如果我们有在Vultr新注册账户或者充值购买云服务器的时候,不支持支付宝付款的原因。毕竟我们是知道的,...
云如故是一家成立于2018年的国内企业IDC服务商,由山东云如故网络科技有限公司运营,IDC ICP ISP CDN VPN IRCS等证件齐全!合法运营销售,主要从事自营高防独立服务器、物理机、VPS、云服务器,虚拟主机等产品销售,适合高防稳定等需求的用户,可用于建站、游戏、商城、steam、APP、小程序、软件、资料存储等等各种个人及企业级用途。机房可封UDP 海外 支持策略定制 双层硬件(傲...
LightNode官网LightNode是一家位于香港的VPS服务商.提供基于KVM虚拟化技术的VPS.在提供全球常见节点的同时,还具备东南亚地区、中国香港等边缘节点.满足开发者建站,游戏应用,外贸电商等应用场景的需求。为用户带来高性能服务器以及优质的服务的同时还提供丰厚的促销活动,新用户注册最高送$20。注册用户带新客即可得10%返佣。商家支持PayPal,支付宝等支付方式。官网:https:/...