全文检索用于前台检索文章数据。基于中文分词的搜索方式,可以实现类似百度、谷歌的搜索效果,并且对匹配内容进行高亮显示。
后台文章管理基于 SQL 搜索,并非基于全文检索。
搜索入口
网站前台首页点击 搜索
图标,或直接输入地址 /search
即可进入搜索页面。
实现原理
全文检索使用 Lucene
实现,与数据库 SQL 检索是两套不同的体系。
全文检索需要另外生成索引文件。全文索引文件保存在WEB-INF/lucene
目录下。
正常情况下,录入、修改或删除文章时,系统除了会操作数据库,同时也会更新 lucene 的全文索引。因此,全文索引的内容会和后台内容(数据库内容)保持一致,无需额外手动操作。
但如果通过进行了数据库迁移、导入或者手动修改了数据库等操作,而索引文件没有同步更新;或者升级或迁移程序时覆盖了全文索引文件,就会出现全文搜索的结果与后台数据(数据库数据)不一致的情况。
此时可以到后台点击内容 - 生成管理 - 更新全部索引
,即可解决这个问题。