由于作者从官网下载了ES5.6.10的安装包,解压之后就开始运行ES,前面一切正常。
后面某个查询条件失效。
解决:
1.先试了把单个查询条件撤离出来,当成一个Test来跑,发现还是获取不到值,表现为有条件的时候没有值返回。
2.然后构建ES查询条件在postman中测试,发现就是获取不到数据,表明代码没问题,估计就是ES的问题。
3.构建ES查询条件的时候发现ES的这个字段进行了分词(我要的是全匹配,却返回不是完全匹配的数据),奇怪,这个条件应该不能分词的。
4.查看ES这个索引字段,跟预想的不一样,ES中的是text,我们要keyword。
5.前期忘记创建ES索引和加IK分词器了,否则ES就会自己帮我们创建索引类型,导致后面的问题。
一定要提前创建好ES索引(跟数据库表结构差不多)
一定要提前创建好ES索引(跟数据库表结构差不多)
一定要提前创建好ES索引(跟数据库表结构差不多)