es相关介绍:yml配置、基础接口及方法介绍

下面是一个示例的 Easy-ES 的 YAML 配置文件:

easy-es:
  enable: true
  address: 192.168.1.145:9200
  username: your_username
  password: your_password
  connectionTimeout: 5000
  socketTimeout: 60000
  maxRetryTimeout: 30000
  maxConnTotal: 30
  maxConnPerRoute: 10
  requestConfig:
    connectTimeout: 5000
    socketTimeout: 60000
    connectionRequestTimeout: 5000

解释一下各个配置项的含义:

enable: 是否启用 Easy-ES,设置为 true 表示启用。
address: Elasticsearch 服务器的地址和端口。
username: Elasticsearch 服务器的用户名(可选)。
password: Elasticsearch 服务器的密码(可选)。
connectionTimeout: 连接 Elasticsearch 的超时时间,单位为毫秒。
socketTimeout: 与 Elasticsearch 进行通信的套接字的超时时间,单位为毫秒。
maxRetryTimeout: 最大的重试超时时间,即在重试期间最多等待的时间,单位为毫秒。
maxConnTotal: 允许的最大连接数。
maxConnPerRoute: 每个目标主机允许的最大连接数。
requestConfig: 请求配置相关的参数。
    connectTimeout: 请求连接的超时时间,单位为毫秒。
    socketTimeout: 等待响应的超时时间,单位为毫秒。
    connectionRequestTimeout: 从连接管理器获取连接的超时时间,单位为毫秒。

根据实际情况,你可以根据上述示例进行相应的配置,确保 Easy-ES 能够正确连接到你的 Elasticsearch 服务器。

当 Easy-ES 配置完毕后,createIndex() 方法将会自动连接 Elasticsearch。

Easy-ES 通过在 Spring Boot 启动类中自动配置 RestHighLevelClient 对象来连接 Elasticsearch。而在 RestHighLevelClient 对象的创建过程中,就已经将 address 参数传入其中,这样就实现了自动连接 Elasticsearch 的功能。

至于 UmsSmsClientEsMapper 接口中的方法,它们操作的是 Elasticsearch 中的索引,与数据库表无关。在 Easy-ES 中,我们可以通过继承 BaseEsMapper 接口来实现对 Elasticsearch 索引的增删改查操作,这些操作都是基于 Elasticsearch 的 API 实现的。

9200端口和5601端口区别:

http://192.168.1.145:9200/ 是Elasticsearch的API端点。Elasticsearch是一个分布式搜索和分析引擎,用于存储和检索大量数据。这个URL地址可以用于与Elasticsearch进行交互,执行各种搜索、索引和管理操作。

http://192.168.1.145:5601/ 是Kibana的Web界面。Kibana是一个开源的数据可视化工具,用于在Elasticsearch上分析和可视化数据。通过这个URL地址,您可以访问Kibana的仪表板、图表和查询工具,以便更好地理解和呈现存储在Elasticsearch中的数据。

因此,两个URL地址提供了不同的功能和用途,分别用于与Elasticsearch和Kibana进行交互。

<dependency>
	<groupId>org.dromara.easy-es</groupId>
	<artifactId>easy-es-boot-starter</artifactId>
	<version>2.0.0-beta3</version>
</dependency>

org.dromara.easy-es:easy-es-boot-starter:2.0.0-beta3 是 Easy-ES 的 Spring Boot Starter 依赖,它是一个用于简化 Elasticsearch 操作的框架。在这个依赖中,BaseEsMapper 是其中一个重要的类。

BaseEsMapper 是 Easy-ES 框架中的一个基础接口,用于定义 Elasticsearch 操作的基本方法。它提供了一系列的增删改查方法,用于操作 Elasticsearch 中的文档。具体而言,BaseEsMapper 包含以下方法:

getEntityClass(): 返回当前泛型实体类的类型。
existsIndex(String indexName): 检查给定名称的索引是否存在。
getIndex(): 获取默认索引的信息。
getIndex(String indexName): 获取给定名称的索引的信息。
createIndex(): 创建默认索引。
createIndex(String indexName): 创建给定名称的索引。
createIndex(Wrapper<T> wrapper): 根据给定的索引配置信息创建索引。
updateIndex(Wrapper<T> wrapper): 更新指定索引的配置信息。
deleteIndex(String... indexNames): 删除指定名称的索引。
refresh(): 刷新所有索引。
refresh(String... indexNames): 刷新指定名称的索引。
executeSQL(String sql): 执行 SQL 语句。
executeDSL(String dsl): 执行 DSL 语句。
executeDSL(String dsl, String indexName): 在指定索引上执行 DSL 语句。
search(Wrapper<T> wrapper): 根据给定的查询条件进行搜索。
getSearchSourceBuilder(Wrapper<T> wrapper): 获取用于查询的 SearchSourceBuilder 对象。
search(SearchRequest request, RequestOptions options) throws IOException: 根据给定的 SearchRequest 和 RequestOptions 进行搜索。
scroll(SearchScrollRequest request, RequestOptions options) throws IOException: 根据给定的 SearchScrollRequest 和 RequestOptions 进行滚动查询。
getSource(Wrapper<T> wrapper): 获取查询条件对应的 JSON 字符串。
pageQuery(Wrapper<T> wrapper, Integer pageNum, Integer pageSize): 分页查询。
searchAfterPage(Wrapper<T> wrapper, List<Object> searchAfter, Integer pageSize): 使用 search_after 方式进行分页查询。
selectCount(Wrapper<T> wrapper): 统计符合条件的数据条数。
selectCount(Wrapper<T> wrapper, boolean useAggregation): 统计符合条件的数据条数,可指定是否使用聚合查询。
insert(T entity): 插入一条数据。
insert(T entity, String... indexNames): 在指定索引上插入一条数据。
insertBatch(Collection<T> entities): 批量插入数据。
insertBatch(Collection<T> entities, String... indexNames): 在指定索引上批量插入数据。
deleteById(Serializable id): 根据 ID 删除一条数据。
deleteById(Serializable id, String... indexNames): 在指定索引上根据 ID 删除一条数据。
deleteBatchIds(Collection<? extends Serializable> ids): 根据 ID 批量删除数据。
deleteBatchIds(Collection<? extends Serializable> ids, String... indexNames): 在指定索引上根据 ID 批量删除数据。
delete(Wrapper<T> wrapper): 根据条件删除数据。
updateById(T entity): 根据 ID 更新一条数据。
updateById(T entity, String... indexNames): 在指定索引上根据 ID 更新一条数据。
updateBatchByIds(Collection<T> entities): 根据 ID 批量更新数据。
updateBatchByIds(Collection<T> entities, String... indexNames): 在指定索引上根据 ID 批量更新数据。
update(T entity, Wrapper<T> wrapper): 根据条件更新数据。
selectById(Serializable id): 根据 ID 查询一条数据。
selectById(Serializable id, String... indexNames): 在指定索引上根据 ID 查询一条数据。
selectBatchIds(Collection<? extends Serializable> ids): 根据 ID 批量查询数据。
selectBatchIds(Collection<? extends Serializable> ids, String... indexNames): 在指定索引上根据 ID 批量查询数据。
selectOne(Wrapper<T> wrapper): 根据条件查询一条数据。
selectList(Wrapper<T> wrapper): 根据条件查询数据列表。
setCurrentActiveIndex(String indexName): 设置当前活跃的索引名称。

BaseEsMapper 还可以通过编写自定义接口继承它,实现更加灵活和具体的 Elasticsearch 操作。

通过使用 BaseEsMapper,你可以方便地进行 Elasticsearch 的增删改查操作,并且 Easy-ES 还提供了更多的功能和扩展点,帮助你更好地处理 Elasticsearch 相关的业务需求。

使用代码示例:

@Mapper
public interface UmsSmsClientEsMapper extends BaseEsMapper<UmsSmsEsClient> {
}
  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ElasticsearchOperations 接口是 Spring Data Elasticsearch 提供的一个接口,用于简化与 Elasticsearch 进行交互的操作。它提供了一系列方法,可以进行索引、查询、更新和删除等操作。 要使用 ElasticsearchOperations 接口,首先需要在项目中引入 Spring Data Elasticsearch 的依赖。然后,可以通过注入 ElasticsearchOperations 对象来使用该接口方法。 下面是 ElasticsearchOperations 接口的一些常用方法: 1. `index`: 将一个对象索引到 Elasticsearch 中。 2. `get`: 根据 ID 从 Elasticsearch 中获取一个对象。 3. `exists`: 判断一个对象是否存在于 Elasticsearch 中。 4. `delete`: 根据 ID 从 Elasticsearch 中删除一个对象。 5. `search`: 执行一个查询操作,并返回匹配的结果。 6. `update`: 更新一个已经存在于 Elasticsearch 中的对象。 除了上述方法ElasticsearchOperations 还提供了更多的方法,用于执行复杂的查询和聚合操作。 在使用 ElasticsearchOperations 接口之前,需要进行相关配置。可以通过在 application.properties 或 application.yml 文件中添加以下配置来连接 Elasticsearch: ``` spring.data.elasticsearch.cluster-nodes=<elasticsearch-host>:<elasticsearch-port> spring.data.elasticsearch.cluster-name=<elasticsearch-cluster-name> ``` 其中,`<elasticsearch-host>` 是 Elasticsearch 的主机名或 IP 地址,`<elasticsearch-port>` 是 Elasticsearch 的端口号,`<elasticsearch-cluster-name>` 是 Elasticsearch 集群的名称。 另外,还可以通过其他配置项来设置连接池大小、超时时间等参数。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值