zoukankan      html  css  js  c++  java
  • 【Solr】 solr对拼音搜索和拼音首字母搜索的支持

    问:对于拼音和拼音首字母的支持,当你在搜商品的时候,如果想输入拼音和拼音首字母就给出商品的信息,怎么办呢?

      实现方式有2种,但是他们其实是对应的。

    •      用lucene实现

       1.建索引, 多建一个索引字段,即拼音和拼音首字母这2个字段。合并的一个字段。

        (拼音和拼音首字母,可以通过pinyin4j.jar。将想要进行拼音搜索的字段进行拼音转换。)

       2.对输入的参数判断是否是拼音,(可以通过将传人的值转换为 utf-8 形式,如果转换后的字符串长度大于原来的字符串的长度,那么就不是拼音。否则就进行拼音查询)

       3.对拼音索引那个字段进行查询,和中文查询一样。参考中文查询。

    •      solr实现

       1.solr实现,不可以用solr自带的功能建索引,那样做无法将拼音和拼音首字母这个字段放入到索引文件中。

       2.想要将拼音放到索引文件库中,即需要从数据库取数据,然后将数据转换成拼音,再将拼音放入到索引库中。

        (用自动建索引的时候是通过db-config.xml文件进行的对数据库的查询。所以无法对查询得到的字段进行拼音转换。)。以上功能用solrj进行实现。solrj提供对solr的一些扩展。

       3.对拼音字段进行查询,和中文查询一样。

      以上思路,经百度搜索,转摘自他人。还为实践,实践后,进行总结。

  • 相关阅读:
    ssh 使用密钥文件
    VS2015企业版,社区版,专业版详细对比
    Redis 与 数据库处理数据的两种模式(转)
    工业级物联网项目架构设计思想(转)
    C# and Redis,安装作为服务
    C# CRC32
    c++,C# 转换
    app配置智能硬件的解决方案
    C# 与C++的数据转换
    C++ 对数组sizeof 和对数组元素sizeof
  • 原文地址:https://www.cnblogs.com/anny0404/p/5276055.html
Copyright © 2011-2022 走看看