Java之品优购课程讲义_day12(7)

商品详情页-读取 SKU 信息
需求:当我们选择规格后,应该在页面上更新商品名称为 SKU 的商品标题,价格也应该为
SKU 的商品价格。
4.1 页面生成 SKU 列表变量
4.1.1 后端服务层

修改 pinyougou-page-service 的 ItemPageServiceImpl.java

@Autowired

private  TbItemMapper  itemMapper;

@Override

public  boolean  genItemHtml(Long  goodsId){

try {

Configuration  configuration  =  freeMarkerConfig.getConfiguration(); Template  template  =  configuration.getTemplate("item.ftl");
Map  dataModel=new  HashMap<>();

//1.加载商品表数据

//2.加载商品扩展表数据

//3.商品分类

//4.SKU 列表

TbItemExample  example=new  TbItemExample(); Criteria  criteria  =  example.createCriteria();
criteria.andStatusEqualTo("1");//状态为有效
criteria.andGoodsIdEqualTo(goodsId);//指定 SPU  ID

example.setOrderByClause("is_default desc");//按照状态降序,保证第一个为默
认

List<TbItem>  itemList  =  itemMapper.selectByExample(example); dataModel.put("itemList",  itemList);
Writer  out=new  FileWriter(pagedir+goodsId+".html"); template.process(dataModel,  out);
out.close();

return  true;

}  catch  (Exception  e)  { e.printStackTrace(); return  false;
}

}

4.1.1 模板
修改模板:

<script>

//SKU 商品列表

var  skuList=[

<#list  itemList  as  item>

{
"id":${item.id?c}, "title":"${item.title!''}",
"price":${item.price?c},

"spec":  ${item.spec}

} ,

</#list>

];

</script>

测试生成,发现页面源代码中生成了变量
Java之品优购课程讲义_day12(7)

猜你喜欢

转载自blog.csdn.net/czbkzmj/article/details/82897610