zoukankan      html  css  js  c++  java
  • SpringBoot2.0之整合ElasticSearch

    就类比数据库到时候去实现

    服务器端配置 集群名字  与yml名字一致

    pom:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>com.toov5</groupId>
      <artifactId>springboot-es</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      
          <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>
            <!-- springboot 整合es -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
            </dependency>
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
            </dependency>
        </dependencies>
      
    </project>

    项目结构:

    Entity:

    package com.toov5.entity;
    
    import org.springframework.data.annotation.Id;
    import org.springframework.data.elasticsearch.annotations.Document;
    
    import lombok.Data;
      
     @Document(indexName="toov5",type="user")   //索引的名字  类型
     @Data 
    public class UserEntity {
      @Id    
      private String id;
      private String name;
      private Integer age;
      private Integer sex;
    }

    Dao:

    package com.toov5.dao;
    
    import org.springframework.data.repository.CrudRepository;
    
    import com.toov5.entity.UserEntity;
    
    public interface UserDao extends CrudRepository<UserEntity, String> {
    
        
        
    }

    Controller:

    package com.toov5.controller;
    
    import java.util.Optional;
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.RequestBody;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    import com.toov5.dao.UserDao;
    import com.toov5.entity.UserEntity;
    
    @RestController
    public class EsController {
        
        @Autowired
        private UserDao userDao;
        
        //添加文档
        @RequestMapping("/addUser")
        public UserEntity addUser(@RequestBody UserEntity userEntity) {
          return userDao.save(userEntity);    
        } 
        
        //查询文档
        @RequestMapping("/findById")
        public Optional<UserEntity> findById(String id) {
           return userDao.findById(id);    
        }
        
    }

    成功:

    查看:

     

     查询:

  • 相关阅读:
    Spring Security Oauth2 认证(获取token/刷新token)流程
    Centos7安装配置Apache(httpd)+php+mysql+phpMyAdmin
    servlet 请求(Request)
    关于对连接数据库时出现1130-host “**” is not allowed to connect to this MySql/mariadb server 的错误解决方法
    在Spring中配置Hibernate和单独配置Hibernate的区别
    新手学Struts2的几个小注意事项
    Oracle 11g 发行版2 新安装后关于登录的一些基本操作
    CentOS7下mariaDB和phpmyadmin的一些安装和配置问题
    Ubuntu的一些文件系统的操作(转自我自己的其他博客)
    jquery上传图片获取像素
  • 原文地址:https://www.cnblogs.com/toov5/p/10296397.html
Copyright © 2011-2022 走看看