添加依赖 gradle

    compile("org.springframework.boot:spring-boot-starter-data-elasticsearch:${springBootVersion}")

只要加入依赖后springboot就可以自动加载相关操作了,基本使用方式如下

application.properties 中可以配置es的一些动作,下面只列举部分,详细的可以看官网

# ELASTICSEARCH (ElasticsearchProperties})
#spring.data.elasticsearch.cluster-name=es-cluster-local
# The address(es) of the server node (comma-separated; if not specified starts a client node)
#spring.data.elasticsearch.cluster-nodes=192.168.30.129:9300
# if local mode should be used with client nodes
#spring.data.elasticsearch.local=true
# if spring data repository support is enabled
#spring.data.elasticsearch.repositories.enabled=true

下面列举一个简单例子,有使用了lombok要先在idea中安装插件才可以使用

package cn.xiaojf.today.data.es.entity;

import lombok.Builder;
import lombok.Data; /**
* @author xiaojf 2016/12/14 20:07.
*/
@Builder
@Data
public class Tag {
private String id;
private String name;
}
package cn.xiaojf.today.data.es.entity;

import lombok.Builder;
import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.annotation.Version;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType; import java.util.Date;
import java.util.List; /**
* @author xiaojf 2016/12/14 11:02.
*/
@Builder
@Data
@Document(indexName = "syslog",type = "2016-12-14",shards = 5,replicas = 1)
public class SysLog {
@Id
private String id;
@Version
private Long version;
private String logType;
@Field(type = FieldType.Ip)
private String ip;
private String content;
@Field(type = FieldType.Date)
private Date logTime;
@Field(type = FieldType.Nested)
private List<Tag> tags;
}
package cn.xiaojf.today.data.es.repository;

import cn.xiaojf.today.data.es.entity.SysLog;
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
import org.springframework.stereotype.Repository; /**
* @author xiaojf 2016/12/14 20:09.
*/
public interface SysLogRepository extends ElasticsearchRepository<SysLog,String> { }
package cn.xiaojf.today.web.controller;

import cn.xiaojf.today.data.es.entity.SysLog;
import cn.xiaojf.today.data.es.entity.Tag;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList;
import java.util.Date;
import java.util.List; /**
* @author xiaojf 2016/12/14 20:10.
*/
@RestController
@RequestMapping("/es")
public class EsController {
// @Autowired
// private SysLogService logService; @RequestMapping("/add")
@ResponseBody
public void add() {
Tag tag = Tag.builder().name("xiaojf").build();
List<Tag> tags = new ArrayList<>();
tags.add(tag);
tags.add(tag); SysLog log = SysLog.builder()
.ip("172.16.29.193")
.content("测试日志")
.logTime(new Date())
.tags(tags)
.build();
// logService.add(log);
}
}

只要简单的几个操作,就可以插入数据到es,非常简单

springboot 集成elasticsearh的简单配置的更多相关文章

  1. SpringBoot集成MyBatis的Bean配置方式

    SpringBoot集成MyBatis的Bean配置方式 SpringBoot是一款轻量级开发的框架,简化了很多原先的xml文件配置方式,接下来就介绍一下如何不适用XML来配置Mybatis spri ...

  2. springBoot日志快速上手简单配置

    默认配置 日志级别从低到高分为: TRACE < DEBUG < INFO < WARN < ERROR < FATAL. 如果设置为 INFO ,则低于 INFO 的信 ...

  3. springboot 集成eureka 超详细配置

    撸了今年阿里.头条和美团的面试,我有一个重要发现.......>>> 原文链接: https://blog.csdn.net/nanbiebao6522/article/detail ...

  4. springboot集成通用mapper详细配置

    通常,我们利用mybatis写持久层方法.要么按照传统定义mapper方法,定义xml文件的方式,全部手写.要么需要通过mybatis-generator逆向工程插件生成大量的xxxExample文件 ...

  5. springboot系列七:springboot 集成 MyBatis、事物配置及使用、druid 数据源、druid 监控使用

    一.MyBatis和druid简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.M ...

  6. SpringBoot 集成Elasticsearch进行简单增删改查

    一.引入的pom文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=" ...

  7. SpringBoot集成Nacos

    一.环境说明 1.CentOS7 2.Jdk1.8 3.Mysql5.7 4.Nacos1.3 5.SpringBoot2.3.1.RELEASE 6.Maven3.6 二.下载Nacos 1.Nac ...

  8. SpringBoot 集成MQTT配置

    目录 1. 前言 2. MQTT介绍 3. SpringBoot 集成MQTT 3.1 导入mqtt库 3.2 配置MQTT订阅者 3.3 配置MQTT发布者 3.4 MQTT消息处理和发送 3.4. ...

  9. SpringBoot集成Swagger2并配置多个包路径扫描

    1. 简介   随着现在主流的前后端分离模式开发越来越成熟,接口文档的编写和规范是一件非常重要的事.简单的项目来说,对应的controller在一个包路径下,因此在Swagger配置参数时只需要配置一 ...

随机推荐

  1. 08 Noise and Error

    噪声:误标.对同一数据点的标注不一致.数据点信息不准确... 噪声是针对整个输入空间的. 存在噪声的情况下,VC bound依旧有用: 存在噪声,就是f--->p(y|x),f是p的特殊情况:如 ...

  2. reids数据类型

      今天第一次开通,写的不好,请谅解   redis并不是简单的key-value存储,实际上它是一个数据结构服务器,支持不同类型的值,也就是说,我们不仅仅把字符串当作键所指向的值,   如下这些数据 ...

  3. virtual box ubuntu 主机和虚拟机实现互相复制粘贴

    链接:http://jingyan.baidu.com/article/574c521917db806c8d9dc18c.html 常规高级里共享粘贴板已经选中双向,(我的已经可以了复制粘贴了),如果 ...

  4. while循环语句的几种方式

    我们知道,在Python中经常我们要使用循环,其中最常用的是while循环,while有很多结合方式,我们知道,如果一个循环没有结束语句那么就失去了意义,所以我们一定要有结束语句,下面来看看while ...

  5. _getch() 函数,应用于输入密码敲入回车前修改

    body,table { font-family: 微软雅黑; font-size: 10pt } table { border-collapse: collapse; border: solid g ...

  6. 第二章、元组和列表(python基础教程第二版 )

    最基本的数据结构是序列,序列中每个元素被分配一个序号-元素的位置,也称索引.第一个索引为0,最后一个元素索引为-1. python中包含6种内建的序列:元组.列表.字符串.unicode字符串.buf ...

  7. Oracle数据泵(上)

    导出 (以导出表空间为例) 1.给用户创建密码 alter user system identified by 00000000;   2.创建导出目录 create or replace  dire ...

  8. tomcat的常用配置

    1.解決get请求的中文乱码问题 解决办法: 首先找到tomcat路径下的apache-tomcat-7.0.52\conf文件夹,打开server.xml文件,编辑如下内容: <Connect ...

  9. TP5学习基础一:增删改查小demo

    ①TP5--增删改查简单的demo 我先吐槽一下:因为工作需要研究tp5,去官网看了一下哎呦,资源挺多挺全啊!然后下载唯一免费的官方教程,我曹pdf打开533页.讲的很细但是开发能等看完才做吗?看到精 ...

  10. 分布式开放消息系统(RocketMQ)的原理与实践(转)

    转自:http://www.jianshu.com/p/453c6e7ff81c 分布式消息系统作为实现分布式系统可扩展.可伸缩性的关键组件,需要具有高吞吐量.高可用等特点.而谈到消息系统的设计,就回 ...