赞
踩
1.公司要进行mongo实现全文检索,在mongo的官网可以看到mongo实现全文检索,链接:
https://docs.mongodb.com/manual/text-search/
2.进行测试,运行结果如图:
3.我们的项目是中文的,建立stores的collection,数据准备如下:
4.建立索引,然后搜索是否关键字,效果如下:
5.总结:mongo的全文搜索并不支持中文的分词,或者是模糊查询,mongo的全文索引是根据英文的分词来搜索的
6.解决项目问题:
我们使用springboot来操作mongo数据库,使用多字段的模糊查询
- public List<ParameterDefinition> searchParameter(String searchCondition) {
- Query query = new Query();
- Criteria criteria =new Criteria();
- criteria.orOperator(
- Criteria.where("name").regex("^.*"+searchCondition+".*$"),
- Criteria.where("usages").regex("^.*"+searchCondition+".*$"),
- Criteria.where("typeName").regex("^.*"+searchCondition+".*$"),
- Criteria.where("unit").regex("^.*"+searchCondition+".*$"),
- Criteria.where("comments").regex("^.*"+searchCondition+".*$")
- );
- query.addCriteria(criteria);
- return mongoTemplate.find(query,ParameterDefinition.class);
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。