开发者学堂课程【Lucene知识精讲与实战(下):综合案例(测试)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/701/detail/12349
综合案例(测试)
1、测试,把项目启动,打开application,选择debug进行启动。
2、通过浏览器进行测试,输入localhost:8080/list。
默认查询所有。
3、在controller中打断点,参数都为空。
queryString = null
price = null
page = null
model = (BindingAwareModelMap@7020) size = 0
4、F8执行,当前页是1。
if (StringUtils. isEmpty(page)) {
page = 1;
}
if (page <= 0) {
page = 1;
}
//
调用
service
查询
ResultModel resultModel . searchService . query (queryString, price, page);
model . addAttribute("result", resultModel);
5、查询第一页的内容。如果查询条件为空,在service中(‘’*:*‘’)查询所有,依然会查询到数据。
resultModel = {ResultModel@7048}
skuList = {ArrayList@7049} size = 20
recordCount =
{
Long@7050)}937864
pageCount = {Long@7051} 46894
curPage = 1
6、进行翻页,查询参数进来,页数变成第二页。
page = (integer@7070) 2
7、输入关键字,查询参数进来,输入手机,点击查询,查询所有的分页条件全部清除,从第一页开始查询,原因是换了关键字,查手机的关键字
默认从第一页开始查
queryString =“
手机
”
price =
‘’‘’
page = (Integer@7046) 1
model = (BindingAwareModelMap@7081) size = 0
8、如果查询条件不进行回写,不放到model里面,输入完手机后,点击搜索,进入页面,输入框就是空白的,关键字就丢了。
9、输入华为手机,接收到的参数就是华为手机,继续放到model中。
//查询条件回显到页面
model . addAttribute( " queryString" , queryString) ;
model . addAttribute("price", price);
model. addAttribute(" page", page);
return" search" ;
10、把断点去掉,点击价格范围,图片很多都一样,很多数据都是循环插入的,用的都是一样的,翻页看到都是一样的,其实是数据问题,为了多加数据,才能看到查询的好处,查询的快慢,所以用循环插了100个数据。