public interface ItemSearchService {
/**
* 搜索
* @param keywords
* @return
*/
public Map<String,Object> search(Map searchMap);
}
@Service(timeout=3000)
public class ItemSearchServiceImpl implements ItemSearchService{
@Autowired
private SolrTemplate solrTemplate;
@Override
public Map<String, Object> search(Map searchMap) {
Map<String,Object> map=new HashMap<>();
Query query=new SimpleQuery();
//添加查询条件
Criteria criteria=new
Criteria("item_keywords").is(searchMap.get("keywords"));
query.addCriteria(criteria);
ScoredPage<TbItem> page = solrTemplate.queryForPage(query, TbItem.class);
map.put("rows", page.getContent());
return map;
}
}
@RestController
@RequestMapping("/itemsearch")
public class ItemSearchController {
@Reference
private ItemSearchService itemSearchService;
@RequestMapping("/search")
public Map<String, Object> search(@RequestBody Map searchMap ){
return itemSearchService.search(searchMap);
}
}
pinyougou-search-web 工程创建 searchService.js
//搜索服务层
app.service("searchService",function($http){
this.search=function(searchMap){
return $http.post('itemsearch/search.do',searchMap);
}
});
pinyougou-search-web 工程 searchController.js
app.controller('searchController',function($scope,searchService){
//搜索
$scope.search=function(){
searchService.search( $scope.searchMap ).success(
function(response){
$scope.resultMap=response;//搜索返回的结果
}
);
}
});
<script type="text/javascript" src="plugins/angularjs/angular.min.js"> </script>
<script type="text/javascript" src="js/base.js"> </script>
<script type="text/javascript" src="js/service/searchService.js"> </script>
<script type="text/javascript" src="js/controller/searchController.js"> </script>
<body ng-app="pinyougou" ng-controller="searchController">
<div class="input-append">
<input type="text" id="autocomplete" ng-model="searchMap.keywords" type="text"
class="input-error input-xxlarge" />
<button class="sui-btn btn-xlarge btn-danger" ng-click="search()" type="button">
搜索</button>
</div>
<li class="yui3-u-1-5" ng-repeat="item in resultMap.rows">
<div class="list-wrap">
<div class="p-img">
<a href="item.html" target="_blank"><img src="{{item.image}}" /></a>
</div>
<div class="price">
<strong>
<em>¥</em>
<i>{{item.price}}</i>
</strong>
</div>
<div class="attr">
<em>{{item.title}}</em>
</div>
<div class="cu">
<em><span>促</span>满一件可参加超值换购</em>
</div>
<div class="commit">
<i class="command">已有 2000 人评价</i>
</div>
<div class="operate">
<a href="success-cart.html" target="_blank" class="sui-btn btn-bordered
btn-danger">加入购物车</a>
<a href="javascript:void(0);" class="sui-btn btn-bordered">对比</a>
<a href="javascript:void(0);" class="sui-btn btn-bordered">关注</a>
</div>
</div>
</li>
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |