EsearchX for java 是基于 okhttp + snack3 开发的,一个代码直白和简单的 Elasticsearch ORM 框架。
- 支持 jdk8、jdk11、jdk17、jdk20
- 支持 es7.x、es8.x
- 采用 lambda 链式写法,很是清新
public class DemoApp { public void demo( { EsContext esx = new EsContext("localhost:30480"; //批量插入 List<LogDo> list = new ArrayList<>(; list.add(new LogDo(; esx.indice("user_log".insertList(list; //一个简单的查询 LogDo result = esx.indice("user_log".selectById(LogDo.class, "1"; //一个略复杂些的查询 EsData<LogDo> result = esx.indice(indice .where(c -> c.useScore(.must( .term("tag", "list1" .range("level", r -> r.gt(3 .orderByAsc("level" .andByAsc("log_id" .minScore(1 .limit(50, 50 .selectList(LogDo.class; } }
本次更新:
- snack 升级为:3.2.66
- EsAggs 增加别名支持
ONode oNode = context.indice(indice .where(c -> c.range("grade", r -> r.gte(3 .limit(0 .aggs(a -> a.min("grade", "grade" //别名 .selectAggs(; long gradeMin = oNode.get("grade".get("value".getLong(;
项目仓库:
- gitee: https://gitee.com/noear/esearchx
- github: https://github.com/noear/esearchx