首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

solr 下拉揭示功能

2013-08-16 
solr 下拉提示功能SolrServer server new HttpSolrServer(SearchUtils.SOLR_HTTP_SERVER_URL)SolrQuery

solr 下拉提示功能

 SolrServer server = new HttpSolrServer(SearchUtils.SOLR_HTTP_SERVER_URL);        SolrQuery params = new SolrQuery();        params.set("qt", "/suggest");        params.set("q", term);        params.set("spellcheck", "on");        params.set("spellcheck.build", "true");        List<String> suggestedWordList = new ArrayList<String>();        List<String> suggestedList = new ArrayList<String>();        try {            QueryResponse qResponse = server.query(params);            SpellCheckResponse spellCheckResponse = qResponse.getSpellCheckResponse();            List<Suggestion> suggestionList = spellCheckResponse.getSuggestions();            for (Suggestion suggestion : suggestionList) {                suggestedWordList = suggestion.getAlternatives();            }            //处理输入拼音方式,不如zhoujielun 提示周杰伦 ,           //其实可以用pinyin4J处理,我为了简单 做demo 临时处理了下            for (String str : suggestedWordList) {                if (str.indexOf(",") > SearchConstants.STATUS_ZERO) {                    suggestedList.add(str.split(",")[1].toString());                } else {                    break;                }            }            if (suggestedList.size() > SearchConstants.STATUS_ZERO) {                JsonUtils.objToJson(suggestedList, response);            } else {                JsonUtils.objToJson(suggestedWordList, response);            }        } catch (Exception e) {            logger.error(Thread.currentThread().getStackTrace()[1].getClass(),                    Thread.currentThread().getStackTrace()[1].getMethodName(), e.getMessage());        }

热点排行