学习淘淘商城第四十四课(首页跳转到搜索页面及搜索实现分析)

来源:互联网 发布:2015年nba新秀体测数据 编辑:程序博客网 时间:2024/05/18 01:01

       上节课我们一起学习了将数据从数据库导入到索引库,这节课我们一起学习下首页跳转到搜索页面。

       我们要访问taotao-portal-web工程就要先启动redis服务(大家根据自己使用的情况启动,使用的是单机版就启动单机版服务器,使用的是集群就启动集群版服务器)。

       启动好taotao-portal-web工程之后,我们访问淘淘商城首页,如下图所示。


       该首页对应的后台代码如下所示,在index.jsp当中是没有搜索相关代码的,那么这部分代码在哪儿呢?其实是在header.jsp当中。


         header.jsp页面的代码如下图所示,可以看到在搜索框中输入搜索搜索关键词之后,点回车即可触发search方法。但我们发现在整个header.jsp当中并没有search方法,那么search方法在哪儿呢?其实是在页面引用的src="/js/base-v1.js"当中。


         base-v1.js中有search这个方法,如下图所示,它指定的访问端口是8082,我们要把它改成8085,,因为8085对应着我们的taotao-search-web工程。


        我们使用tomcat插件启动的方式启动taotao-search-web工程,启动方法是在工程上右键-------->Run As------->Maven Install,会看到如下图所示弹出框,在Goals一栏输入"clean tomcat7:run"。点击"Apply",然后点击"Run"就可以启动该工程了。


         我们在淘淘商城首页的搜索框中输入"手机"然后点击搜索按钮,会看到如下图所示界面,可以看到已经正确跳转到搜索工程了,只是我们的搜索功能还没完成因此现在访问是报404的。


        下面我们来分析一下搜索功能的实现,我们首先把搜索工程的静态资源,大家可以到http://download.csdn.net/detail/u012453843/9830293这个地址进行下载。下载解压之后放到搜索工程当中,如下图所示。


       我们商品搜索页面只需进行查询和分页即可,我们现在不用像京东做的这么复杂,练习嘛,我们就不使用过滤条件、排序等功能了。我们只实现查询和分页功能。


        我们再到search.jsp页面查看一下代码,可以看到搜索页面由总页数totalPages和搜索出来的内容列表itemList组成,而且可能会用到查询总数量。这些我们应该放到一个pojo当中。


         由于搜索服务和搜索工程都需要用到这个pojo,因此我们还是把这个pojo放到taotao-common当中比较合适。如下图所示。注意类一定要实现序列化接口!!


       pojo类如下

package com.taotao.common.pojo;import java.io.Serializable;import java.util.List;public class SearchResult implements Serializable{//总页数    private long totalPages;    //总数量    private long totalNumber;    //查询出的商品列表    private List<SearchItem> itemList;public long getTotalPages() {return totalPages;}public void setTotalPages(long totalPages) {this.totalPages = totalPages;}public long getTotalNumber() {return totalNumber;}public void setTotalNumber(long totalNumber) {this.totalNumber = totalNumber;}public List<SearchItem> getItemList() {return itemList;}public void setItemList(List<SearchItem> itemList) {this.itemList = itemList;}    }
   
           

 

0 0
原创粉丝点击