想做一个全系统检索功能求方法求思路
现在呢我想做一个系统全文检索功能。就比如我系统中我输入一个名称可以查询出所有的跟这个有关系的数据出来。简单说就是系统中有很多模块也有很多数据表。客户有这么个要求就是我输入一个词语或者输入一段文字就能够把我系统中所有跟这个有关系的内容都查询出来。不知道有没有什么好的方法或者思路啊!求大神们指点迷津!
------解决方案--------------------微软都没有把这个功能做好
------解决方案--------------------可以用Lucene开源代码,你只要用Lucene对所有需要全文检索的内容建立索引,然后就可以实现全文检索,
------解决方案--------------------Lucene到底好不好用我不好说,这东西火了好久但一直没去用过,我说说我的写法吧,其实很弱智的写法
说白了,你就是想让你的查询变得对应各个字段都能模糊查询,那你写sql的时候就把这个模糊查询的条件都加上……当然这种写法只适用于小的系统,太大的似乎用起来就有点费劲了
------解决方案--------------------我也没有直接用过lucene,不过lucene应该可以解决你的问题,lucene只是建立索引,你可以把你的数据库表的主键在建索引的时候,一起写入lucene的全文索引中,查找的时候,lucene会把你写入的数据库主键作为结果返回给你,然后你可以根据这些主键建立url,
第4个问题其实比较麻烦,同步不好做,你可以定期建立索引,这样效率比较高,删除的记录可以不处理,等查出结果后再检查相关记录是否被删除了,