Easy-Es入门案例

0. Easy-Es简介

Easy-Es(简称EE)是一款基于ElasticSearch(简称Es)官方提供的RestHighLevelClient打造的ORM开发框架,在 RestHighLevelClient 的基础上,只做增强不做改变,为简化开发、提高效率而生,您如果有用过Mybatis-Plus(简称MP),那么您基本可以零学习成本直接上手EE,EE是MP的Es平替版,在有些方面甚至比MP更简单,同时也融入了更多Es独有的功能,助力您快速实现各种场景的开发.

官网地址:Easy-Es

1. 创建Springboot项目,导入依赖:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.elasticsearch.client</groupId>
                <artifactId>elasticsearch-rest-high-level-client</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.elasticsearch</groupId>
                <artifactId>elasticsearch</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.elasticsearch.client</groupId>
        <artifactId>elasticsearch-rest-high-level-client</artifactId>
        <version>7.14.0</version>
    </dependency>
    <dependency>
        <groupId>org.elasticsearch</groupId>
        <artifactId>elasticsearch</artifactId>
        <version>7.14.0</version>
    </dependency>
    <dependency>
        <groupId>cn.easy-es</groupId>
        <artifactId>easy-es-boot-starter</artifactId>
        <version>2.0.0-beta1</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>

需要排除Springboot自带的elasticsearch,因为官方建议使用7.14.0版本

2. 配置文件:

easy-es:
  enable: true #默认为true,若为false则认为不启用本框架
  address : 192.168.149.128:9200

3. 添加@EsMapperScan注解,扫描Mapper文件

@EsMapperScan("com.itheima.demos.mapper.es")
@SpringBootApplication
public class EasyEsApplication {

    public static void main(String[] args) {
        SpringApplication.run(EasyEsApplication.class, args);
    }

}

4. 实体类和Mapper:

@Data
@IndexName
public class Document {
    /**
     * es中的唯一id
     */
    private String id;
    /**
     * 文档标题
     */
    private String title;
    /**
     * 文档内容
     */
    private String content;
}
package com.itheima.demos.mapper.es;

import cn.easyes.core.core.BaseEsMapper;
import com.itheima.demos.pojo.es.Document;

public interface DocumentMapper extends BaseEsMapper<Document> {
}

5. 运行

@SpringBootTest
class EasyEsApplicationTests {

    @Resource
    private DocumentMapper documentMapper;

    @Test
    void insertDocument() {
        Document document1 = new Document();
        document1.setTitle("诸葛丞相病故111");
        document1.setContent("诸葛丞相病故xxxxxx111");
        documentMapper.insert(document1);

        Document document2 = new Document();
        document2.setTitle("诸葛丞相病故222");
        document2.setContent("诸葛丞相病故xxxxxx222");
        documentMapper.insert(document2);
    }

    @Test
    void selectDocument() {
        LambdaEsQueryWrapper<Document> wrapper = EsWrappers.lambdaQuery(Document.class);
        List<Document> documents = documentMapper.selectList(wrapper);
        for (Document document : documents) {
            System.out.println(document);
        }
    }

}

运行结果:

2024-04-04 18:19:22.632  INFO 30336 --- [           main] easy-es                                  : ===> Execute By Easy-Es: 
index-name: document_s0
DSL:{"size":10000,"query":{"bool":{"adjust_pure_negative":true,"boost":1.0}},"track_total_hits":2147483647}
Document(id=lUJKqI4Bid00Opb_wzJ5, title=诸葛丞相病故111, content=诸葛丞相病故xxxxxx111)
Document(id=lkJKqI4Bid00Opb_wzLA, title=诸葛丞相病故222, content=诸葛丞相病故xxxxxx222)

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我可以为您提供一些关于Spring Boot整合Easy Elasticsearch的指导。 1. 添加依赖 首先,在`pom.xml`文件中添加Easy ElasticsearchElasticsearch的依赖: ```xml <dependency> <groupId>com.jun</groupId> <artifactId>easy-elasticsearch-spring-boot-starter</artifactId> <version>1.0.0</version> </dependency> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId> <version>7.12.0</version> </dependency> ``` 2. 配置Elasticsearch 在`application.yml`中添加Elasticsearch的配置信息: ```yaml spring: elasticsearch: rest: uris: http://localhost:9200 ``` 3. 创建Elasticsearch的Repository 创建一个继承自`ElasticsearchRepository`的接口,用于定义Elasticsearch的操作方法: ```java public interface BookRepository extends ElasticsearchRepository<Book, Long> { List<Book> findBooksByAuthor(String author); } ``` 其中,`Book`是我们要操作的实体类,`Long`是这个实体类的ID类型。 4. 测试Elasticsearch 可以编写一个测试方法来测试Elasticsearch是否成功整合: ```java @SpringBootTest class BookRepositoryTest { @Autowired private BookRepository bookRepository; @Test public void testSave() { Book book = new Book(); book.setId(1L); book.setTitle("Java编程思想"); book.setAuthor("Bruce Eckel"); bookRepository.save(book); } @Test public void testFind() { List<Book> books = bookRepository.findBooksByAuthor("Bruce Eckel"); System.out.println(books); } } ``` 执行测试方法后,如果能够正确输出结果,则说明Easy Elasticsearch已经成功整合到了Spring Boot中。 希望这些步骤能够对您有所帮助!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值