Solr第二讲——SolrJ客户端的使用与案例
2017-09-08 14:12
369 查看
一、Solrj的使用
1.什么是Solrjsolrj是访问Solr服务的java客户端(就像通过jedis操作redis一样),提供索引和搜索的请求方法,SolrJ通常在嵌入在业务系统中,通过SolrJ的API接口操作Solr服务,如下图:
@Test public void queryIndex2() throws Exception { // 创建HttpSolrServer对象,通过它和Solr服务器建立连接。 // 参数:solr服务器的访问地址 HttpSolrServer server = new HttpSolrServer("http://localhost:8080/solr/"); // 创建SolrQuery对象 SolrQuery query = new SolrQuery(); // 设置查询条件 query.setQuery("钻石"); // 设置过滤条件 query.setFilterQueries("product_catalog_name:幽默杂货"); // 设置排序 query.setSort("product_price", ORDER.desc); // 设置分页信息 query.setStart(0); query.setRows(10); // 设置显得的域的列表 query.setFields("id", "product_name", "product_price", "product_catalog_name", "product_picture"); // 设置默认搜索域 query.set("df", "product_name"); // 设置高亮 query.setHighlight(true); query.addHighlightField("product_name"); query.setHighlightSimplePre("<em>"); query.setHighlightSimplePost("</em>"); // 调用server的查询方法,查询索引库 QueryResponse response = server.query(query); // 查询结果 SolrDocumentList results = response.getResults(); // 查询结果总数 long cnt = results.getNumFound(); System.out.println("查询结果总数:" + cnt); for (SolrDocument solrDocument : results) { System.out.println(solrDocument.get("id")); String productName = (String) solrDocument.get("product_name"); //获取高亮列表 Map<String, Map<String, List<String>>> highlighting = response .getHighlighting(); //获得本文档的高亮信息 List<String> list = highlighting.get(solrDocument.get("id")).get( "product_name"); //如果有高亮,则把商品名称赋值为有高亮的那个名称 if (list != null) { productName = list.get(0); } System.out.println(productName); System.out.println(solrDocument.get("product_price")); System.out.println(solrDocument.get("product_catalog_name")); System.out.println(solrDocument.get("product_picture")); } }
View Code
相关文章推荐
- Solr JAVA客户端SolrJ 4.9使用示例教程
- 企业级搜索应用服务器Solr4.10.4部署开发详解(3)- Solr使用-使用java客户端solrj进行增删改查开发
- 【Apache Solr系列之五】使用Solr客户端SolrJ实现多层面统计
- Solr JAVA客户端SolrJ 4.9使用示例教程
- Solr JAVA客户端SolrJ 4.9使用示例教程
- Solr JAVA客户端SolrJ的使用
- solr学习笔记 -- day03 使用solrJ客户端
- 使用solrj操作solr
- solr学习之路 配置文件的讲解以及页面客户端的使用 <二>
- solr6使用solrJ做XML数据导入
- 实验:android案例——新闻客户端(使用开源项目AsyncHttpClient和SmartImageView)
- Solr6.6的安装以及Java使用SolrJ调用Solr服务,springmvc使用solr,springboot使用solr
- Solr4.0的tomcat部署及Solrj的简单使用
- 详解java整合solr5.0之solrj的使用
- solr6.2从环境部署到与mysql整合到中文分词器到solrJ的使用
- 全文索引----solr客户端工具solrJ
- solr 的客户端调用solrj 建索引+分页查询
- 淘淘商城系列——使用SolrJ管理Solr集群
- [置顶] 【Solr】深入浅出Solr(三)——使用Solrj向索引库中导入数据
- solr的客户端调用solrj