day08商品详情页SKU联动+FreeMarker模版页面静态化.docx

上传人:b****5 文档编号:5970764 上传时间:2023-01-02 格式:DOCX 页数:17 大小:1.08MB
下载 相关 举报
day08商品详情页SKU联动+FreeMarker模版页面静态化.docx_第1页
第1页 / 共17页
day08商品详情页SKU联动+FreeMarker模版页面静态化.docx_第2页
第2页 / 共17页
day08商品详情页SKU联动+FreeMarker模版页面静态化.docx_第3页
第3页 / 共17页
day08商品详情页SKU联动+FreeMarker模版页面静态化.docx_第4页
第4页 / 共17页
day08商品详情页SKU联动+FreeMarker模版页面静态化.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

day08商品详情页SKU联动+FreeMarker模版页面静态化.docx

《day08商品详情页SKU联动+FreeMarker模版页面静态化.docx》由会员分享,可在线阅读,更多相关《day08商品详情页SKU联动+FreeMarker模版页面静态化.docx(17页珍藏版)》请在冰豆网上搜索。

day08商品详情页SKU联动+FreeMarker模版页面静态化.docx

day08商品详情页SKU联动+FreeMarker模版页面静态化

模拟京东(8)

课程回顾:

1、前台系统的品牌展示

●品牌的修改或者添加时。

将品牌信息保存到redis中

●品牌从redis获取(hash:

id---name)

●redis内存数据库(支持的最大的阀值:

8Gkey-value:

使用较少的key会定期清理、使用较少的key持久化到磁盘上。

●windowredis启动redis服务数据没有了(没有持久化到磁盘上)

●开发环境:

安装Linux上。

redis单线程----listfifo

2、条件是筛选

●品牌筛选:

需要判断是否已选了价格

●价格筛选:

需要判断是否已选了品牌

●service实现类处理:

条件信息封装SolrQuery对象中。

1、brandIdsetFQ(“brandId:

”+barndId)

2、price切割[]length==2[100TO200]else[1600TO*]

●展示已选条件map(key,value)fn:

length(map)

●将已选过的条件隐藏empty

3、ActiveMQ介绍和使用

●概念:

消息队列(消息中间件MOM)。

Apache的产品。

使用最广泛(稳定)。

通信方式:

异步通信。

●JMS:

Javamessageservicejms支持消息中间件供应商(ActiveMQ),spring支持jms。

ActiveMQ---jms---spring整合。

●jms发送消息方式:

1、pointtopoint(点对点)生产者生产消息(queue1)消费者(queue1)监听容器取出消息(将消息消费---处理业务)

2、p/s(消息的订阅与发布):

生产者生产消息-可以被多个消费者消费

●名词

1、jsmtemplate:

发送消息到容器中

2、生产者:

生产消息

3、消费者:

需要监听mq容器。

如果有自己的消息需要进行消费。

●ActiveMQ工作的原理

●本项目的使用场景---p2p

1、商品上架isShow

2、service-product:

生产者。

将id发送mq

3、将商品保存到solr中交给service-solr服务(消费者)去执行。

课程计划:

1、去商品详情页(单品页)

2、sku的联动效果

3、freemarker的介绍

4、商品详情页的页面静态化

1去商品详情页

1.1分析

1、点击图片时,根据商品的id查询数据

2、查询的数据:

product(商品信息)

3、查询的数据:

sku(库存信息)

1.2修改jsp页面的请求路径

1.3搭建cms工程

1.3.1copy一些配置文件

1.3.2编辑web.xml

1.4编写service接口、实现类

1.4.1编写CmsService接口

定义的方法:

1、根据商品的id查询商品信息

2、根据商品的id查询库存列表

1.4.2编写cms的实现类

更新:

查询库存大于0的

1.5配置dubbo服务

配置服务提供方:

cms

配置服务消费方:

portal

1.6编写controller

1.7jsp页面回显

颜色:

商品信息:

1.8颜色重复

1.8.1bug

1.8.2set需要重新equals和hashcode方法

对Color(id)重写equals和hashcode方法。

1.8.3将颜色信息放到set容器中(不能存放重复元素)

1.8.4jsp页面的颜色回显

2sku的联动效果

2.1选择颜色操作

2.2选择尺码

确定尺码后就确定了一条sku,确定了sku后就可以填充价格。

2.3进入详情页默认选择第一个颜色下的第一个尺码

最终

3freemarker介绍

3.1概念

FreeMarker是一款模板引擎:

即一种基于模板和要改变的数据,并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。

它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。

FreeMarker是免费的,基于Apache许可证2.0版本发布。

其模板编写为FreeMarkerTemplateLanguage(FTL、html、txt),属于简单、专用的语言。

需要准备数据在真实编程语言中来显示,比如数据库查询和业务运算,之后模板显示已经准备好的数据。

在模板中,主要用于如何展现数据,而在模板之外注意于要展示什么数据。

模板+数据----输出(将数据展示在静态页)。

3.2原理

●模板+数据模型=输出

我们准备模板、准备数据,通过Freemarker提供的类将模板生成静态页,并再该静态页上填充我们准备好的数据。

3.3语法

jsp:

遍历list

foreachitems=”${list}”var=”prodct”>

foreach>

if>empty

ftl:

遍历list<#listlistasproduct>${product.name}

<#inclurd>

<#if>${keyword!

}

3.4demo入门程序

4商品详情的页面静态化

4.1分析

1、什么时候进行页面静态化---上架时生成静态化的页面。

2、构建数据到模板中----上架的过程中将页面静态化。

a、商品信息(商品id)

b、库存信息(商品id)

3、使用ActiveMQ的消息的订阅与发布

4、将生成的静态页的代码抽取到接口服务中StaticPageService。

方法:

不需要返回值

形参:

rootMap(静态页需要的数据)id(作为静态页的名称)

4.2编写StaticPageService静态化服务

接口:

实现类:

4.3将静态服务交给spring管理

4.4生成页面静态化

4.4.1添加cms的配置文件---消息的订阅与发布模式

4.4.2自定义消息监听器

4.5更新service-product/solr中的ActiveMQ配置文件

solr:

product:

4.6copy模板

4.6.1copy模板和静态资源

4.6.2修改模板

4.6.2.1修改product.html

4.6.2.2修改footer-links.html

4.6.2.3footer.html

4.6.2.4head.html

4.6.2.5shortcut.html

略。

4.7修改访问连接

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1