ElasticSearch(三)springboot整合ES

最基础的整合:html

1、maven依赖node

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.0.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
    </dependencies>

2、配置文件application.ymlweb

spring:
  data:
    elasticsearch:
    ####集群名称
     cluster-name: myes
    ####地址 
     cluster-nodes: 192.168.212.xxx:9300

3、实体类UserEntityspring

@Document(indexName = "mymayikt", type = "user")
@Data
public class UserEntity {
    @Id
    private String id;
    private String name;
    private int sex;
    private int age;
}

4、dao层代码(实现CrudRepository就能够了,里面封装不少操做ES的方法)app

public interface UserReposiory extends CrudRepository<UserEntity, String> {

}

5、controller层elasticsearch

@RestController
public class EsController {

    @Autowired
    private UserReposiory userReposiory;

    @RequestMapping("/addUser")
    public UserEntity addUser(@RequestBody UserEntity user) {
        return userReposiory.save(user);
    }

    @RequestMapping("/findUser")
    public Optional<UserEntity> findUser(String id) {
        return userReposiory.findById(id);
    }
}

6、启动类maven

@SpringBootApplication
@EnableElasticsearchRepositories(basePackages = "com.dyh.dao")
public class AppEs {

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

 

直接启动会报错:spring-boot

None of the configured nodes are available:spa

  解决方案(项目配置文件cluster-name要与ElasticSearch的配置文件属性值要相同):code

    Vi /usr/local/elasticsearch-6.4.3/config/elasticsearch.yml

    cluster.name: myes

 

 

也能够参考这个博客:https://www.cnblogs.com/dalaoyang/p/8990989.html

相关文章
相关标签/搜索