记录 easy-es java集成问题记录

记录:easy-es java集成问题记录

1.easy-es DSL:自动生成一个与之对应的“.keyword” 去除**

问题:in 查询
先更改es 的映射,再更改java Bean
列:字段 location
// 字段keyword类型(不支持分词),字段映射为text类型(支持分词查询)

//es-client 的映射
//原
"location": {
                "type": "keyword"
            },
//改
"location": {
                "type": "text",
                "analyzer": "ik_max_word",
                "search_analyzer": "ik_smart"
            },
//同时支持
"location": {
	"type": "text",
	"fields": {
		"keyword": { "type": "keyword", "ignore_above": 256 }
	},
	"analyzer": "ik_max_word",
	"search_analyzer": "ik_smart"
},

Java代码:

//text类型(支持分词查询)
    /**
     * 归属地
     * 用于下拉框 多选搜索
     */
    @IndexField(fieldType = FieldType.TEXT, analyzer = Analyzer.IK_SMART, searchAnalyzer = Analyzer.IK_MAX_WORD)
    private String location;

2.集成Easy-es 查询功能 LambdaEsQueryWrapper**

text = mysql like
keyword = in 或eq 
//mysql =
LambdaEsQueryWrapper<实体类> wrapper = new LambdaEsQueryWrapper<>();
wrapper.eq("字段.keyword",);
//mysql!=
//LambdaEsQueryWrapper 没有ne 换成 not 里面 再写eq
wrapper.not(o->{
            o.eq("字段.keyword",);
        });
//mysql in
//查看1的记录 改映射为 text类型,用于分词搜索
List<String> value=new ArrayList<>();
wrapper.in("字段.keyword",);
//mysql like
List<String> value=new ArrayList<>();
wrapper.in("字段",);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值