首页显示热门商品和最新商品

  • 步骤分析
  • 准备工作
  • 代码实现

1)步骤分析

  1. 在页面加载的时候查询最新商品和热门商品即可。
  2. 在indexServlet的index方法中实现就可以了
    查询的结果为两个集合list,将两个list放入request域中,请求转发到index.jsp即可。
  3. 在index.jsp中展示数据。

2)准备工作

① 数据库数据和表

CREATE TABLE `product` (`pid` varchar(32) NOT NULL,`pname` varchar(50) DEFAULT NULL,`market_price` double DEFAULT NULL,`shop_price` double DEFAULT NULL,`pimage` varchar(200) DEFAULT NULL,`pdate` date DEFAULT NULL,`is_hot` int(11) DEFAULT NULL,`pdesc` varchar(255) DEFAULT NULL,`pflag` int(11) DEFAULT NULL,`cid` varchar(32) DEFAULT NULL,PRIMARY KEY (`pid`),KEY `sfk_0001` (`cid`),CONSTRAINT `sfk_0001` FOREIGN KEY (`cid`) REFERENCES `category` (`cid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

② 创建商品实体

在entity中创建实体类Product:

public class Product implements Serializable{/*** */private static final long serialVersionUID = 4332584225565337619L;/*** 商品ID*/private String pid;/*** 商品名称*/private String pname;/*** 市场价*/private Double marketPrice;/*** 商城价*/private Double shopPrice;/*** 图片路径*/private String pimage;/*** */private Date pdate;/*** 是否热门 1:热门 0:不热门*/private Integer isHot;/*** 描述*/private String pdesc;/*** 是否下架 1:下架 0:未下架*/private Integer pflag;/*** 属于哪个分类 把Integer的cid变为Category类型 */private Category category;//getter和sertter略写
}

③ 创建Dao层和Service层接口和实现类


3)代码实现

①更改IndexServlet中的index方法

因为在head.jsp中动态加载了分类展示,所以把分类的查询和绑定删除掉,直接转发即可:

private void index(HttpServletRequest request, HttpServletResponse response) throws Exception {//请求转发request.getRequestDispatcher("/jsp/index.jsp").forward(request, response);}

然后查询最新商品和热门商品 将他们转发到首页

private void index(HttpServletRequest request, HttpServletResponse response) throws Exception {//1、最新商品List<Product> newList=productService.findNew();//2、热门商品List<Product> hotList=productService.findHot();//将两个集合绑定到request中转发request.setAttribute("newList", newList);request.setAttribute("hotList", hotList);//请求转发request.getRequestDispatcher("/jsp/index.jsp").forward(request, response);
}

② 完成dao和service

这里只展示ProductDaoImpl:

public class ProductDaoImpl implements ProductDao{//QueryRunnerprivate QueryRunner qr=new QueryRunner(DBUtil.getDataSource());@Overridepublic List<Product> findNew() throws Exception {//查询最新的9个商品 按照时间排序查询前9个String sql="select pid,pname,market_price marketPrice,shop_price shopPrice,pimage,"+ "pdate,is_hot isHot,pdesc,pflag,cid from `product` order by pdate limit 9";return qr.query(sql, new BeanListHandler<>(Product.class));}@Overridepublic List<Product> findHot() throws Exception {String sql="select pid,pname,market_price marketPrice,shop_price shopPrice,"+ "pimage,pdate,is_hot isHot,pdesc,pflag,cid  from `product` where is_hot = 1 order by pdate limit 9";return qr.query(sql, new BeanListHandler<>(Product.class));}}

③ 在index.jsp上完成商品展示

最热商品:

<c:forEach items="${hotList }" var="hotPro"><div class="col-md-2" style="text-align:center;height:200px;padding:10px 0px;"><a href="product_info.htm"><img src="${path}/${hotPro.pimage}" width="130" height="130" style="display: inline-block;"></a><p><a href="product_info.html" style='color:#666'>${hotPro.pname }</a></p><p><font color="#E4393C" style="font-size:16px">&yen;${hotPro.shopPrice}</font></p></div>
</c:forEach>

最新商品:

<c:forEach items="${newList }" var="newPro"><div class="col-md-2" style="text-align:center;height:200px;padding:10px 0px;"><a href="product_info.htm"><img src="${path}/${newPro.pimage}" width="130" height="130" style="display: inline-block;"></a><p><a href="product_info.html" style='color:#666'>${newPro.pname }</a></p><p><font color="#E4393C" style="font-size:16px">&yen;${newPro.shopPrice}</font></p></div>
</c:forEach>

④ 测试

热门商品:

最新商品:

12_首页显示热门商品和最新商品相关推荐

  1. 首页上的热门商品和最新商品

    首页上的热门商品和最新商品 步骤分析:     页面加载的时候 查询最新商品 和 热门商品即可     在indexServlet的index方法中实现就可以了         查询的结果两个list ...

  2. ECshop二次开发 ECSHOP首页显示积分商城里的商品

    以ECSHOP2.7.2官方默认模板为基础 1).首先打开 index.php 文件,在最末尾增加下面函数,注意千万不要写到 "?>" 的外面去,要加在"?> ...

  3. ecshop首页显示折扣的方法,ecshop商品显示折扣的方法

    在网上有很多关于ecshop详细页调用折扣和节省的方法,而首页需要调用折扣的话也可以照葫芦画瓢来修改.整理一下看看是不是可以 首先参考一下详细页添加折扣和节省的方法: 打开程序根目录 includes ...

  4. 熱銷商品查詢php,ecshop首页调用指定商品分类下推荐热销最新商品

    其实这个在ecshop中预留这个函数,不知道是不是开发者特意留下,但不想让所有人知道而已,函数在includes/lib_goods.php里面. 下面开始教你如何添加指定分类的下热销产品: 1.在首 ...

  5. php刷新热销商品,ecshop首页如何调用指定分类下的推荐热销最新商品

    其实这个在ecshop中预留这个函数,不知道是不是开发者特意留下,但不想让所有人知道而已,函数在includes/lib_goods.php里面. 下面开始教你如何添加指定分类的下热销产品: 1.在首 ...

  6. 【SSH网上商城项目实战16】Hibernate的二级缓存处理首页的热门显示

    转自:https://blog.csdn.net/eson_15/article/details/51405911 网上商城首页都有热门商品,那么这些商品的点击率是很高的,当用户点击某个热门商品后需要 ...

  7. JavaWeb商城项目笔记--- Day1 (热门商品,热销商品)

    功能出现场景 在线的商场中,前端最近界面总会有一块区域用来显示销售量最高的,最新上架的和类似的这种的商品. 一些联想到的功能:热销,热评等 功能解决思路 核心还是对数据库进行查询,然后响应给前端信息, ...

  8. 1532. 最近的三笔订单 1543. 产品名称格式修复 1549. 每件商品的最新订单 1555. 银行账户概要

    union 去重(重复数据不在添加) union all 不去重 trim(str) ->将str字符中的 首尾 空格去掉 date_format(date,'%Y-%m') 函数用于以不同的格 ...

  9. excel不显示0_进销存软件如何设置仓库库存查询默认不显示库存为0的商品? 常见问题文章中心信管飞软件官网...

    信管飞仓库管理软件.信管飞RMS支持管理仓库库存,可在仓库库存查询界面查询当前商品库存数量,软件支持设置在仓库库存查询时默认不显示库存为0的商品,方便汇总有库存的商品信息.本文以信管飞RMS为例,示范 ...

  10. 人工智能-推荐系统-模块01:离线统计模块【使用SparkSQL(基于Scala语言/Python语言)进行离线统计分析:历史热门商品统计、近期热门商品统计、商品平均评分统计...】

    一.基于scala语言的SparkSQL离线统计分析 1.将数据导入MongoDB数据库 DataLoader.scala import com.mongodb.casbah.commons.Mong ...

最新文章

  1. 8.0系统安装Xposed框架失败Xposed framework version XX is installed
  2. Ionic 存储目录 CORS
  3. LeetCode 61. 旋转链表
  4. 「ROI 2017 Day 2」反物质(单调队列优化dp)
  5. 什么是面向对象_什么是面向对象?新手程序员必掌握的技能
  6. ic读卡器设置工具_从Matlab被禁来看,给IC教育带来哪些启发?
  7. Docker学习文档之三 其他相关-Dockerfile指令
  8. dedecms 5.7 站点文件从本地子目录上传到远程根目录后找不到模板的解决方案
  9. C#事件(event)解析(转)
  10. 剪映电脑版_插上手机秒变2K屏笔记本!TNT go扩展本评测:欢迎使用下一代电脑...
  11. 在opencv3中实现机器学习之:利用逻辑斯谛回归(logistic regression)分类
  12. Linux 下的静态(函数)库、动态(函数)库
  13. 百面机器学习——svm使用信息熵寻找最优划分
  14. AJAX 事件与事件对象
  15. oracle12c 查看库,12c 检查pdb数据库状态
  16. 2008服务器系统之家,UEFI+GPT模式安装Windows server 2008 R2教程
  17. ESP32 开发笔记(三)源码示例 10_IIC_ADXL345 使用IIC总线实现读取ADXL345角度加速度传感器
  18. 自动开机和自动关机设定方法(包括linux和windows)
  19. 查看QQ空间秘密的发布时间
  20. Tableau中的LOOKUP函数

热门文章

  1. MATLAB模式识别基本操作函数解析
  2. 【2018徐州ICPC Gym-102012 M】Rikka with Illuminations【计算几何】
  3. mysql 密码sa_重置MySQL root密码
  4. 电大本科免考英语和计算机,网络教育本科英语和计算机统考免考条件是什么?...
  5. 计算机基础第五章知识,计算机基础第5次作业-第五章-Powerpoint知识题
  6. 占位符是如何防止sql注入的?
  7. poj2373 Dividing the Path (单调队列+dp)
  8. mybatis 使用 mssql 报错 不支持从 UNKNOWN 到 UNKNOWN 的转换
  9. Git储藏和引用日志
  10. 2)Oracle 公司的产品线介绍