ES-plus 易用的java elasticserarchAPI客户端-快速入门篇

记录框架es-plus elastisearch 快速入门

特点

  • 无侵入:Es-Plus 在 rest-high-level-client 的基础上进行扩展,只做增强不做改变.支持原生rest-high-level-client
  • 融合mybatis-plus语法和ES-Rest-Api: 适用于习惯mybatis-plus语法和会原生es语句操作的人群
  • 优雅的聚合封装:让es的聚合操作变得更简易
  • 内置es所有分词器:提供es所有的分词器和可配置定义filters
  • 自动reindex功能:es索引库属性的改变会导致es需要重建索引.重建索引的数据迁移由框架自动完成.使用了读写锁,确保reindex过程中额外生成的数据也能同步(但会有删除数据的冗余)
  • 兼容es多版本: 同时支持es6.7和es7.8双版本
  • 优雅的nested嵌套查询: 使用lambda表达式封装实现更优雅的嵌套查询
  • 静态链式es编程: 支持使用静态类,无需指定对应实体类即可执行。可以简单快速对es的索引进行增删改查。
  • 多数据源es: 代码中预留,暂未排期开发

首先做好配置文件

# es地址 多个逗号分隔
es-plus.address=xxx.xxx.xxx.xxx:9200
# 是否异步reindex
es-plus.global-config.reindex-async=false
# 是否开启自动reindex. 如果没有开启也会自动对新增的字段添加映射
es-plus.global-config.index-auto-move=false
# 查询最大数量的限制
es-plus.global-config.search-size=5000
# 索引添加统一的环境后缀 测试环境
es-plus.global-config.global-suffix=_test
# 索引全局默认分词器    默认值ep_standard   可选 #ep_ik_max_word,ep_ik_smart,ep_simple,ep_keyword,ep_stop,ep_whitespace,ep_pattern,ep_language,ep_snowball
es-plus.global-config.default-analyzer=ep_ik_max_word
# 自定义全局refresh策略
es-plus.global-config.refresh-policy=wait_until
# 全局默认获取es的id的字段 默认id
es-plus.global-config.global-es-id=id
es-plus.username=
es-plus.password=

现在我们需要对一个现有索引进行查询

一般不推荐这种方式。但是可以快速查询并获得map。这是可以快速获取数据的最佳方式

@org.junit.jupiter.api.Test
    public void fast() {
        EsResponse<Map> list = Es.chainQuery(Map.class).index("sys_user2ttt").list();
 }

会得到如下结果

EsResponse(list=[{date=2023-07-10, samplesNesteds=[{samplesNestedInner=[{id=0, state=true, email=3, username=3}, {id=1, state=true, email=3, username=3}, {id=2, state=true, email=3, username=3}, {id=3, state=true, email=3, username=3}, {id=4, state=true, email=3, username=3}, {id=5, state=true, email=3, username=3}, {id=6, state=true, email=3, username=3}, {id=7, state=true, email=3, username=3}, {id=8, state=true, email=3, username=3}, {id=9, state=true, email=3, username=3}, {id=10, state=true, email=3, username=3}, {id=11, state=true, email=3, username=3}, {id=12, state=true, email=3, username=3}, {id=13, state=true, email=3, username=3}, {id=14, state=true, email=3, username=3}, {id=15, state=true, email=3, username=3}, {id=16, state=true, email=3, username=3}, {id=17, state=true, email=3, username=3}, {id=18, state=true, email=3, username=3}, {id=19, state=true, email=3, username=3}, {id=20, state=true, email=3, username=3}, {id=21, state=true, email=3, username=3}, {id=22, state=true, email=3, username=3}, {id=23, state=true, email=3, username=3}, {id=24, state=true, email=3, username=3}, {id=25, state=true, email=3, username=3}, {id=26, state=true, email=3, username=3}, {id=27, state=true, email=3, username=3}, {id=28, state=true, email=3, username=3}, {id=29, state=true, email=3, username=3}, {id=30, state=true, email=3, username=3}, {id=31, state=true, email=3, username=3}, {id=32, state=true, email=3, username=3}, {id=33, state=true, email=3, username=3}, {id=34, state=true, email=3, username=3}, {id=35, state=true, email=3, username=3}, {id=36, state=true, email=3, username=3}, {id=37, state=true, email=3, username=3}, {id=38, state=true, email=3, username=3}, {id=39, state=true, email=3, username=3}, {id=40, state=true, email=3, username=3}, {id=41, state=true, email=3, username=3}, {id=42, state=true, email=3, username=3}, {id=43, state=true, email=3, username=3}, {id=44, state=true, email=3, username=3}, {id=45, state=true, email=3, username=3}, {id=46, state=true, email=3, username=3}, {id=47, state=true, email=3, username=3}, {id=48, state=true, email=3, username=3}, {id=49, state=true, email=3, username=3}, {id=50, state=true, email=3, username=3}, {id=51, state=true, email=3, username=3}, {id=52, state=true, email=3, username=3}, {id=53, state=true, email=3, username=3}, {id=54, state=true, email=3, username=3}, {id=55, state=true, email=3, username=3}, {id=56, state=true, email=3, username=3}, {id=57, state=true, email=3, username=3}, {id=58, state=true, email=3, username=3}, {id=59, state=true, email=3, username=3}, {id=60, state=true, email=3, username=3}, {id=61, state=true, email=3, username=3}, {id=62, state=true, email=3, username=3}, {id=63, state=true, email=3, username=3}, {id=64, state=true, email=3, username=3}, {id=65, state=true, email=3, username=3}, {id=66, state=true, email=3, username=3}, {id=67, state=true, email=3, username=3}, {id=68, state=true, email=3, username=3}, {id=69, state=true, email=3, username=3}, {id=70, state=true, email=3, username=3}, {id=71, state=true, email=3, username=3}, {id=72, state=true, email=3, username=3}, {id=73, state=true, email=3, username=3}, {id=74, state=true, email=3, username=3}, {id=75, state=true, email=3, username=3}, {id=76, state=true, email=3, username=3}, {id=77, state=true, email=3, username=3}, {id=78, state=true, email=3, username=3}, {id=79, state=true, email=3, username=3}, {id=80, state=true, email=3, username=3}, {id=81, state=true, email=3, username=3}, {id=82, state=true, email=3, username=3}, {id=83, state=true, email=3, username=3}, {id=84, state=true, email=3, username=3}, {id=85, state=true, email=3, username=3}, {id=86, state=true, email=3, username=3}, {id=87, state=true, email=3, username=3}, {id=88, state=true, email=3, username=3}, {id=89, state=true, email=3, username=3}, {id=90, state=true, email=3, username=3}, {id=91, state=true, email=3, username=3}, {id=92, state=true, email=3, username=3}, {id=93, state=true, email=3, username=3}, {id=94, state=true, email=3, username=3}, {id=95, state=true, email=3, username=3}, {id=96, state=true, email=3, username=3}, {id=97, state=true, email=3, username=3}, {id=98, state=true, email=3, username=3}, {id=99, state=true, email=3, username=3}, {id=100, state=true, email=3, username=3}, {id=101, state=true, email=3, username=3}, {id=102, state=true, email=3, username=3}, {id=103, state=true, email=3, username=3}, {id=104, state=true, email=3, username=3}, {id=105, state=true, email=3, username=3}, {id=106, state=true, email=3, username=3}, {id=107, state=true, email=3, username=3}, {id=108, state=true, email=3, username=3}, {id=109, state=true, email=3, username=3}, {id=110, state=true, email=3, username=3}, {id=111, state=true, email=3, username=3}, {id=112, state=true, email=3, username=3}, {id=113, state=true, email=3, username=3}, {id=114, state=true, email=3, username=3}, {id=115, state=true, email=3, username=3}, {id=116, state=true, email=3, username=3}, {id=117, state=true, email=3, username=3}, {id=118, state=true, email=3, username=3}, {id=119, state=true, email=3, username=3}, {id=120, state=true, email=3, username=3}, {id=121, state=true, email=3, username=3}, {id=122, state=true, email=3, username=3}, {id=123, state=true, email=3, username=3}, {id=124, state=true, email=3, username=3}, {id=125, state=true, email=3, username=3}, {id=126, state=true, email=3, username=3}, {id=127, state=true, email=3, username=3}, {id=128, state=true, email=3, username=3}, {id=129, state=true, email=3, username=3}, {id=130, state=true, email=3, username=3}, {id=131, state=true, email=3, username=3}, {id=132, state=true, email=3, username=3}, {id=133, state=true, email=3, username=3}, {id=134, state=true, email=3, username=3}, {id=135, state=true, email=3, username=3}, {id=136, state=true, email=3, username=3}, {id=137, state=true, email=3, username=3}, {id=138, state=true, email=3, username=3}, {id=139, state=true, email=3, username=3}, {id=140, state=true, email=3, username=3}, {id=141, state=true, email=3, username=3}, {id=142, state=true, email=3, username=3}, {id=143, state=true, email=3, username=3}, {id=144, state=true, email=3, username=3}, {id=145, state=true, email=3, username=3}, {id=146, state=true, email=3, username=3}, {id=147, state=true, email=3, username=3}, {id=148, state=true, email=3, username=3}, {id=149, state=true, email=3, username=3}, {id=150, state=true, email=3, username=3}, {id=151, state=true, email=3, username=3}, {id=152, state=true, email=3, username=3}, {id=153, state=true, email=3, username=3}, {id=154, state=true, email=3, username=3}, {id=155, state=true, email=3, username=3}, {id=156, state=true, email=3, username=3}, {id=157, state=true, email=3, username=3}, {id=158, state=true, email=3, username=3}, {id=159, state=true, email=3, username=3}, {id=160, state=true, email=3, username=3}, {id=161, state=true, email=3, username=3}, {id=162, state=true, email=3, username=3}, {id=163, state=true, email=3, username=3}, {id=164, state=true, email=3, username=3}, {id=165, state=true, email=3, username=3}, {id=166, state=true, email=3, username=3}, {id=167, state=true, email=3, username=3}, {id=168, state=true, email=3, username=3}, {id=169, state=true, email=3, username=3}, {id=170, state=true, email=3, username=3}, {id=171, state=true, email=3, username=3}, {id=172, state=true, email=3, username=3}, {id=173, state=true, email=3, username=3}, {id=174, state=true, email=3, username=3}, {id=175, state=true, email=3, username=3}, {id=176, state=true, email=3, username=3}, {id=177, state=true, email=3, username=3}, {id=178, state=true, email=3, username=3}, {id=179, state=true, email=3, username=3}, {id=180, state=true, email=3, username=3}, {id=181, state=true, email=3, username=3}, {id=182, state=true, email=3, username=3}, {id=183, state=true, email=3, username=3}, {id=184, state=true, email=3, username=3}, {id=185, state=true, email=3, username=3}, {id=186, state=true, email=3, username=3}, {id=187, state=true, email=3, username=3}, {id=188, state=true, email=3, username=3}, {id=189, state=true, email=3, username=3}, {id=190, state=true, email=3, username=3}, {id=191, state=true, email=3, username=3}, {id=192, state=true, email=3, username=3}, {id=193, state=true, email=3, username=3}, {id=194, state=true, email=3, username=3}, {id=195, state=true, email=3, username=3}, {id=196, state=true, email=3, username=3}, {id=197, state=true, email=3, username=3}, {id=198, state=true, email=3, username=3}, {id=199, state=true, email=3, username=3}, {id=200, state=true, email=3, username=3}, {id=201, state=true, email=3, username=3}, {id=202, state=true, email=3, username=3}, {id=203, state=true, email=3, username=3}, {id=204, state=true, email=3, username=3}, {id=205, state=true, email=3, username=3}, {id=206, state=true, email=3, username=3}, {id=207, state=true, email=3, username=3}, {id=208, state=true, email=3, username=3}, {id=209, state=true, email=3, username=3}, {id=210, state=true, email=3, username=3}, {id=211, state=true, email=3, username=3}, {id=212, state=true, email=3, username=3}, {id=213, state=true, email=3, username=3}, {id=214, state=true, email=3, username=3}, {id=215, state=true, email=3, username=3}, {id=216, state=true, email=3, username=3}, {id=217, state=true, email=3, username=3}, {id=218, state=true, email=3, username=3}, {id=219, state=true, email=3, username=3}, {id=220, state=true, email=3, username=3}, {id=221, state=true, email=3, username=3}, {id=222, state=true, email=3, username=3}, {id=223, state=true, email=3, username=3}, {id=224, state=true, email=3, username=3}, {id=225, state=true, email=3, username=3}, {id=226, state=true, email=3, username=3}, {id=227, state=true, email=3, username=3}, {id=228, state=true, email=3, username=3}, {id=229, state=true, email=3, username=3}, {id=230, state=true, email=3, username=3}, {id=231, state=true, email=3, username=3}, {id=232, state=true, email=3, username=3}, {id=233, state=true, email=3, username=3}, {id=234, state=true, email=3, username=3}, {id=235, state=true, email=3, username=3}, {id=236, state=true, email=3, username=3}, {id=237, state=true, email=3, username=3}, {id=238, state=true, email=3, username=3}, {id=239, state=true, email=3, username=3}, {id=240, state=true, email=3, username=3}, {id=241, state=true, email=3, username=3}, {id=242, state=true, email=3, username=3}, {id=243, state=true, email=3, username=3}, {id=244, state=true, email=3, username=3}, {id=245, state=true, email=3, username=3}, {id=246, state=true, email=3, username=3}, {id=247, state=true, email=3, username=3}, {id=248, state=true, email=3, username=3}, {id=249, state=true, email=3, username=3}, {id=250, state=true, email=3, username=3}, {id=251, state=true, email=3, username=3}, {id=252, state=true, email=3, username=3}, {id=253, state=true, email=3, username=3}, {id=254, state=true, email=3, username=3}, {id=255, state=true, email=3, username=3}, {id=256, state=true, email=3, username=3}, {id=257, state=true, email=3, username=3}, {id=258, state=true, email=3, username=3}, {id=259, state=true, email=3, username=3}, {id=260, state=true, email=3, username=3}, {id=261, state=true, email=3, username=3}, {id=262, state=true, email=3, username=3}, {id=263, state=true, email=3, username=3}, {id=264, state=true, email=3, username=3}, {id=265, state=true, email=3, username=3}, {id=266, state=true, email=3, username=3}, {id=267, state=true, email=3, username=3}, {id=268, state=true, email=3, username=3}, {id=269, state=true, email=3, username=3}, {id=270, state=true, email=3, username=3}, {id=271, state=true, email=3, username=3}, {id=272, state=true, email=3, username=3}, {id=273, state=true, email=3, username=3}, {id=274, state=true, email=3, username=3}, {id=275, state=true, email=3, username=3}, {id=276, state=true, email=3, username=3}, {id=277, state=true, email=3, username=3}, {id=278, state=true, email=3, username=3}, {id=279, state=true, email=3, username=3}, {id=280, state=true, email=3, username=3}, {id=281, state=true, email=3, username=3}, {id=282, state=true, email=3, username=3}, {id=283, state=true, email=3, username=3}, {id=284, state=true, email=3, username=3}, {id=285, state=true, email=3, username=3}, {id=286, state=true, email=3, username=3}, {id=287, state=true, email=3, username=3}, {id=288, state=true, email=3, username=3}, {id=289, state=true, email=3, username=3}, {id=290, state=true, email=3, username=3}, {id=291, state=true, email=3, username=3}, {id=292, state=true, email=3, username=3}, {id=293, state=true, email=3, username=3}, {id=294, state=true, email=3, username=3}, {id=295, state=true, email=3, username=3}, {id=296, state=true, email=3, username=3}, {id=297, state=true, email=3, username=3}, {id=298, state=true, email=3, username=3}, {id=299, state=true, email=3, username=3}, {id=300, state=true, email=3, username=3}, {id=301, state=true, email=3, username=3}, {id=302, state=true, email=3, username=3}, {id=303, state=true, email=3, username=3}, {id=304, state=true, email=3, username=3}, {id=305, state=true, email=3, username=3}, {id=306, state=true, email=3, username=3}, {id=307, state=true, email=3, username=3}, {id=308, state=true, email=3, username=3}, {id=309, state=true, email=3, username=3}, {id=310, state=true, email=3, username=3}, {id=311, state=true, email=3, username=3}, {id=312, state=true, email=3, username=3}, {id=313, state=true, email=3, username=3}, {id=314, state=true, email=3, username=3}, {id=315, state=true, email=3, username=3}, {id=316, state=true, email=3, username=3}, {id=317, state=true, email=3, username=3}, {id=318, state=true, email=3, username=3}, {id=319, state=true, email=3, username=3}, {id=320, state=true, email=3, username=3}, {id=321, state=true, email=3, username=3}, {id=322, state=true, email=3, username=3}, {id=323, state=true, email=3, username=3}, {id=324, state=true, email=3, username=3}, {id=325, state=true, email=3, username=3}, {id=326, state=true, email=3, username=3}, {id=327, state=true, email=3, username=3}, {id=328, state=true, email=3, username=3}, {id=329, state=true, email=3, username=3}, {id=330, state=true, email=3, username=3}, {id=331, state=true, email=3, username=3}, {id=332, state=true, email=3, username=3}, {id=333, state=true, email=3, username=3}, {id=334, state=true, email=3, username=3}, {id=335, state=true, email=3, username=3}, {id=336, state=true, email=3, username=3}, {id=337, state=true, email=3, username=3}, {id=338, state=true, email=3, username=3}, {id=339, state=true, email=3, username=3}, {id=340, state=true, email=3, username=3}, {id=341, state=true, email=3, username=3}, {id=342, state=true, email=3, username=3}, {id=343, state=true, email=3, username=3}, {id=344, state=true, email=3, username=3}, {id=345, state=true, email=3, username=3}, {id=346, state=true, email=3, username=3}, {id=347, state=true, email=3, username=3}, {id=348, state=true, email=3, username=3}, {id=349, state=true, email=3, username=3}, {id=350, state=true, email=3, username=3}, {id=351, state=true, email=3, username=3}, {id=352, state=true, email=3, username=3}, {id=353, state=true, email=3, username=3}, {id=354, state=true, email=3, username=3}, {id=355, state=true, email=3, username=3}, {id=356, state=true, email=3, username=3}, {id=357, state=true, email=3, username=3}, {id=358, state=true, email=3, username=3}, {id=359, state=true, email=3, username=3}, {id=360, state=true, email=3, username=3}, {id=361, state=true, email=3, username=3}, {id=362, state=true, email=3, username=3}, {id=363, state=true, email=3, username=3}, {id=364, state=true, email=3, username=3}, {id=365, state=true, email=3, username=3}, {id=366, state=true, email=3, username=3}, {id=367, state=true, email=3, username=3}, {id=368, state=true, email=3, username=3}, {id=369, state=true, email=3, username=3}, {id=370, state=true, email=3, username=3}, {id=371, state=true, email=3, username=3}, {id=372, state=true, email=3, username=3}, {id=373, state=true, email=3, username=3}, {id=374, state=true, email=3, username=3}, {id=375, state=true, email=3, username=3}, {id=376, state=true, email=3, username=3}, {id=377, state=true, email=3, username=3}, {id=378, state=true, email=3, username=3}, {id=379, state=true, email=3, username=3}, {id=380, state=true, email=3, username=3}, {id=381, state=true, email=3, username=3}, {id=382, state=true, email=3, username=3}, {id=383, state=true, email=3, username=3}, {id=384, state=true, email=3, username=3}, {id=385, state=true, email=3, username=3}, {id=386, state=true, email=3, username=3}, {id=387, state=true, email=3, username=3}, {id=388, state=true, email=3, username=3}, {id=389, state=true, email=3, username=3}, {id=390, state=true, email=3, username=3}, {id=391, state=true, email=3, username=3}, {id=392, state=true, email=3, username=3}, {id=393, state=true, email=3, username=3}, {id=394, state=true, email=3, username=3}, {id=395, state=true, email=3, username=3}, {id=396, state=true, email=3, username=3}, {id=397, state=true, email=3, username=3}, {id=398, state=true, email=3, username=3}, {id=399, state=true, email=3, username=3}, {id=400, state=true, email=3, username=3}, {id=401, state=true, email=3, username=3}, {id=402, state=true, email=3, username=3}, {id=403, state=true, email=3, username=3}, {id=404, state=true, email=3, username=3}, {id=405, state=true, email=3, username=3}, {id=406, state=true, email=3, username=3}, {id=407, state=true, email=3, username=3}, {id=408, state=true, email=3, username=3}, {id=409, state=true, email=3, username=3}, {id=410, state=true, email=3, username=3}, {id=411, state=true, email=3, username=3}, {id=412, state=true, email=3, username=3}, {id=413, state=true, email=3, username=3}, {id=414, state=true, email=3, username=3}, {id=415, state=true, email=3, username=3}, {id=416, state=true, email=3, username=3}, {id=417, state=true, email=3, username=3}, {id=418, state=true, email=3, username=3}, {id=419, state=true, email=3, username=3}, {id=420, state=true, email=3, username=3}, {id=421, state=true, email=3, username=3}, {id=422, state=true, email=3, username=3}, {id=423, state=true, email=3, username=3}, {id=424, state=true, email=3, username=3}, {id=425, state=true, email=3, username=3}, {id=426, state=true, email=3, username=3}, {id=427, state=true, email=3, username=3}, {id=428, state=true, email=3, username=3}, {id=429, state=true, email=3, username=3}, {id=430, state=true, email=3, username=3}, {id=431, state=true, email=3, username=3}, {id=432, state=true, email=3, username=3}, {id=433, state=true, email=3, username=3}, {id=434, state=true, email=3, username=3}, {id=435, state=true, email=3, username=3}, {id=436, state=true, email=3, username=3}, {id=437, state=true, email=3, username=3}, {id=438, state=true, email=3, username=3}, {id=439, state=true, email=3, username=3}, {id=440, state=true, email=3, username=3}, {id=441, state=true, email=3, username=3}, {id=442, state=true, email=3, username=3}, {id=443, state=true, email=3, username=3}, {id=444, state=true, email=3, username=3}, {id=445, state=true, email=3, username=3}, {id=446, state=true, email=3, username=3}, {id=447, state=true, email=3, username=3}, {id=448, state=true, email=3, username=3}, {id=449, state=true, email=3, username=3}, {id=450, state=true, email=3, username=3}, {id=451, state=true, email=3, username=3}, {id=452, state=true, email=3, username=3}, {id=453, state=true, email=3, username=3}, {id=454, state=true, email=3, username=3}, {id=455, state=true, email=3, username=3}, {id=456, state=true, email=3, username=3}, {id=457, state=true, email=3, username=3}, {id=458, state=true, email=3, username=3}, {id=459, state=true, email=3, username=3}, {id=460, state=true, email=3, username=3}, {id=461, state=true, email=3, username=3}, {id=462, state=true, email=3, username=3}, {id=463, state=true, email=3, username=3}, {id=464, state=true, email=3, username=3}, {id=465, state=true, email=3, username=3}, {id=466, state=true, email=3, username=3}, {id=467, state=true, email=3, username=3}, {id=468, state=true, email=3, username=3}, {id=469, state=true, email=3, username=3}, {id=470, state=true, email=3, username=3}, {id=471, state=true, email=3, username=3}, {id=472, state=true, email=3, username=3}, {id=473, state=true, email=3, username=3}, {id=474, state=true, email=3, username=3}, {id=475, state=true, email=3, username=3}, {id=476, state=true, email=3, username=3}, {id=477, state=true, email=3, username=3}, {id=478, state=true, email=3, username=3}, {id=479, state=true, email=3, username=3}, {id=480, state=true, email=3, username=3}, {id=481, state=true, email=3, username=3}, {id=482, state=true, email=3, username=3}, {id=483, state=true, email=3, username=3}, {id=484, state=true, email=3, username=3}, {id=485, state=true, email=3, username=3}, {id=486, state=true, email=3, username=3}, {id=487, state=true, email=3, username=3}, {id=488, state=true, email=3, username=3}, {id=489, state=true, email=3, username=3}, {id=490, state=true, email=3, username=3}, {id=491, state=true, email=3, username=3}, {id=492, state=true, email=3, username=3}, {id=493, state=true, email=3, username=3}, {id=494, state=true, email=3, username=3}, {id=495, state=true, email=3, username=3}, {id=496, state=true, email=3, username=3}, {id=497, state=true, email=3, username=3}, {id=498, state=true, email=3, username=3}, {id=499, state=true, email=3, username=3}], id=1, state=false, email=3, username=3}, {id=2, state=true, email=4, username=4}], sex=0, id=1, email=bbbberretertrebbbb, username=ggghhh}], total=1, esAggsResponse=com.es.plus.es7.client.EsPlusAggregations@33f349ae, profileResults=null, firstSortValues=[], tailSortValues=[], innerHits=null, scrollId=null, totalShards=5, successfulShards=5, skippedShards=0, shardFailures=[], tookInMillis=2)

一般我们需要面向ORM编程

现在来创建一个实体类

/**
 * 快速测试 
 * 举例4种类型索引
 */
@Data
@EsIndex(index = "fast_test")
public class FastTestDTO {
    @EsField(type = EsFieldType.KEYWORD)
    private String username;
    @EsField(type = EsFieldType.TEXT)
    private String text;
    @EsField(type = EsFieldType.INTEGER)
    private Integer age;
    //@EsField(type = EsFieldType.DATE,format = "yyyy-MM-dd HH:mm:ss")
    @EsField(type = EsFieldType.DATE)
    private Date createTime;
 

然后创建索引和插入数据

   @org.junit.jupiter.api.Test
    public void fastCreateIndex() {
       //没有指定索引的话会取Class中的索引
        Es.chainIndex().createIndex(FastTestDTO.class).putMapping(FastTestDTO.class);
    }

 	 @org.junit.jupiter.api.Test
    public void fastSave() {
        FastTestDTO fastTestDTO = new FastTestDTO();
        fastTestDTO.setText("我的个人介绍 我是一篇文章,用于搜索。我的关键词有很多。苹果 梨子 苹果X2 苹果哥哥");
        fastTestDTO.setAge(25);
        fastTestDTO.setUsername("酷酷的");
        fastTestDTO.setCreateTime(new Date());
        Es.chainUpdate(FastTestDTO.class).save(fastTestDTO);
    }
第一个创建的返回结果

c.e.p.es7.client.EsPlusIndexRestClient : es-plus putMapping index=fast_test info={“properties”:{“createTime”:{“type”:“date”},“text”:{“type”:“text”},“age”:{“type”:“integer”},“username”:{“type”:“keyword”}}}
此时创建了一个新的索引
框架会对es原先支持的es时间字段多一种类型支持.因为框架对时间的默认序列化是yyyy-MM-dd HH:mm:ss
yyyy-MM-dd HH:mm:ss||strict_date_optional_time||epoch_millis
在这里插入图片描述

第二个新增的返回结果

com.es.plus.es7.client.EsPlusRestClient : es-plus saveBatch fast_test
在这里插入图片描述
由于没有指定id。es会自动生成id

因此现在加上id

/**
 * 快速测试 
 * 举例4种类型索引
 */
@Data
@EsIndex(index = "fast_test")
public class FastTestDTO {
    @EsId
    private Long id;
    @EsField(type = EsFieldType.KEYWORD)
    private String username;
    @EsField(type = EsFieldType.TEXT)
    private String text;
    @EsField(type = EsFieldType.INTEGER)
    private Integer age;
    //@EsField(type = EsFieldType.DATE,format = "yyyy-MM-dd HH:mm:ss")
    @EsField(type = EsFieldType.DATE)
    private Date createTime;
 
   @org.junit.jupiter.api.Test
    public void fastSave() {
        FastTestDTO fastTestDTO = new FastTestDTO();
        fastTestDTO.setId(1L);
        fastTestDTO.setText("我的个人介绍 我是一篇文章,用于搜索。我的关键词有很多。苹果 梨子 苹果X2 苹果哥哥");
        fastTestDTO.setAge(25);
        fastTestDTO.setUsername("酷酷的");
        fastTestDTO.setCreateTime(new Date());
        Es.chainUpdate(FastTestDTO.class).save(fastTestDTO);
    }

由于id是long类型,自动映射也是long类型,所有不需要调用put映射,直接调用

在这里插入图片描述

现在得到了唯一id的文档,并且多次save只会有条数据

调用查询

 @org.junit.jupiter.api.Test
    public void fastSearch() {
        EsResponse<FastTestDTO> test = Es.chainLambdaQuery(FastTestDTO.class).match(FastTestDTO::getText, "苹果").list();
        System.out.println(test);
    }

得到结果
EsResponse(list=[FastTestDTO(id=1, username=酷酷的, text=我的个人介绍 我是一篇文章,用于搜索。我的关键词有很多。苹果 梨子 苹果X2 苹果哥哥, age=25, createTime=Wed Jul 12 00:00:00 CST 2023)], total=1, esAggsResponse=com.es.plus.es7.client.EsPlusAggregations@a047bdb, profileResults=null, firstSortValues=[], tailSortValues=[], innerHits=null, scrollId=null, totalShards=5, successfulShards=5, skippedShards=0, shardFailures=[], tookInMillis=12)

在这里插入图片描述

github地址 https://github.com/zhaohaoh/es-plus
下一篇将介绍在项目中实战通过继承Service的方法ORM mybatis-plus方式的封装
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值