• 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);    
        }
        
    }

    成功:

    查看:

     

     查询:

    转载于:https://www.cnblogs.com/toov5/p/10296397.html

  • 相关阅读:
    MyBatis环境配置
    log4j配置不同的类多个日志文件
    Http协议头、代理
    Apache二级域名实现
    Flash Builder 4.7 完美破解
    网页设计方面,哪些中英文字体的组合能有好的视觉效果
    网页设计中最常用的字体
    sublime text 3 插件:package control
    大量实用工具类、开源包,该帖绝对值得你收藏!
    10个简化Web开发者工作的HTML5开发工具
  • 原文地址:https://www.cnblogs.com/it-deepinmind/p/13490399.html
Copyright © 2020-2023  润新知