Solr-简单项目应用

接前两篇文章,更新了部分索引内容,当前索引如图
在这里插入图片描述
一、项目依赖

<dependency>
	<groupId>org.apache.solr</groupId>
	<artifactId>solr-solrj</artifactId>
	<version>7.7.1</version>
</dependency>

二、简单实例
SolrController.java

@RestController
public class SolrController {

   @Autowired
    private SolrService solrService;

   @GetMapping("/queryByTitle")
    public SolrDocumentList queryByTitle(@RequestParam String title){
       SolrDocumentList solrDocuments = solrService.queryByTitle(title);
       for(SolrDocument solrDocument : solrDocuments){
           System.out.println(solrDocument.getFirstValue("product_title"));
           System.out.println(solrDocument.getFirstValue("product_sell_point"));
       }
       return solrDocuments;
   }
}

SolrService.java

@Service
public class SolrService {

    @Autowired
    private SolrClient solrClient;

    @Value("${solr-core-sell}")
    protected String solrCoreSell;

    public SolrDocumentList queryByTitle(String title){
        SolrQuery params = new SolrQuery();
        params.set("q",String.format("product_title:%s", ClientUtils.escapeQueryChars(title)));
        params.setStart(0);
        params.setRows(10);
        return querySolr(params,solrCoreSell);
    }
    /**
     * 执行solr查询
     */
    private SolrDocumentList querySolr(SolrQuery solrQuery, String solrCore){
        ModifiableSolrParams params = new ModifiableSolrParams();
        params.add(solrQuery);
        QueryResponse queryResponse = null;
        try {
            queryResponse = solrClient.query(solrCore,params);
        } catch (Exception e) {
            return null;
        }
        SolrDocumentList results = queryResponse.getResults();
        return results;
    }

}

application.yml

spring:
  data:
      solr:
        host: http://localhost:8983/solr
solr-core-sell: zym

项目启动,Postman调用
http://localhost:8080/queryByTitle?title=新款
在这里插入图片描述

与Solr页面搜索结果一致如图:
在这里插入图片描述

至此,简单项目应用结束

文章仅作为个人学习整理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值