黑马程序员技术交流社区

标题: 【郑州校区】复杂查询 [打印本页]

作者: 我是楠楠    时间: 2019-4-25 15:04
标题: 【郑州校区】复杂查询
【郑州校区】复杂查询

[AppleScript] 纯文本查看 复制代码
public void testSearchFuzaIndex() throws Exception {
                SolrServer solrServer = new HttpSolrServer("http://localhost:8080/solr/");
                SolrQuery query = new SolrQuery();
                // q : 设置筛选条件
                query.setQuery("台灯");
                // fq : 设置过滤条件,可以有多个
                query.addFilterQuery("user_age:[20 TO 50]", "user_name:豆豆");
                // sort : 设置排序 desc asc
                query.setSort("user_age", ORDER.desc);
                // start, rows : 分页条件
                query.setStart(0);
                query.setRows(5);
                // fl : 设置查询显示的列表
                query.setFields("id", "user_name", "user_age");
       
                // df :设置默认搜索域
                query.set("df", "user_keywords");
                // hl : 设置开启高亮
                query.setHighlight(true);
                // hl.fl : 设置高亮显示的域
                query.addHighlightField("user_name");
                // hl.simple.pre : 设置高亮显示前缀
                query.setHighlightSimplePre("<em>");
                // hl.simple.post : 设置高亮显示的后缀
                query.setHighlightSimplePost("</em>");
                // 取结果
                QueryResponse response = solrServer.query(query);
                SolrDocumentList list = response.getResults();
                System.out.println("总记录: " + list.getNumFound());
                for (SolrDocument solrDocument : list) {
                        System.out.println(solrDocument.get("id"));
                        // 取高亮结果集
                        Map<String, Map<String, List<String>>> highlighting = response.getHighlighting();
                        List<String> hlist = highlighting.get(solrDocument.get("id")).get("user_name");
                        String productName = "";
                        if (hlist != null && hlist.size() > 0) {
                                productName = hlist.get(0);
                        } else {
                                productName = (String) solrDocument.get("user_name");
                        }
                        System.out.println(productName);
                        System.out.println(solrDocument.get("user_age"));
                }
        }

传智播客·黑马程序员郑州校区地址
河南省郑州市 高新区长椿路11号大学科技园(西区)东门8号楼三层
联系电话 0371-56061160/61/62
来校路线  地铁一号线梧桐街站A口出






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2