springboot 集成elasticsearh的简单配置
添加依赖 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的简单配置的更多相关文章
- SpringBoot集成MyBatis的Bean配置方式
SpringBoot集成MyBatis的Bean配置方式 SpringBoot是一款轻量级开发的框架,简化了很多原先的xml文件配置方式,接下来就介绍一下如何不适用XML来配置Mybatis spri ...
- springBoot日志快速上手简单配置
默认配置 日志级别从低到高分为: TRACE < DEBUG < INFO < WARN < ERROR < FATAL. 如果设置为 INFO ,则低于 INFO 的信 ...
- springboot 集成eureka 超详细配置
撸了今年阿里.头条和美团的面试,我有一个重要发现.......>>> 原文链接: https://blog.csdn.net/nanbiebao6522/article/detail ...
- springboot集成通用mapper详细配置
通常,我们利用mybatis写持久层方法.要么按照传统定义mapper方法,定义xml文件的方式,全部手写.要么需要通过mybatis-generator逆向工程插件生成大量的xxxExample文件 ...
- springboot系列七:springboot 集成 MyBatis、事物配置及使用、druid 数据源、druid 监控使用
一.MyBatis和druid简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.M ...
- SpringBoot 集成Elasticsearch进行简单增删改查
一.引入的pom文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=" ...
- SpringBoot集成Nacos
一.环境说明 1.CentOS7 2.Jdk1.8 3.Mysql5.7 4.Nacos1.3 5.SpringBoot2.3.1.RELEASE 6.Maven3.6 二.下载Nacos 1.Nac ...
- SpringBoot 集成MQTT配置
目录 1. 前言 2. MQTT介绍 3. SpringBoot 集成MQTT 3.1 导入mqtt库 3.2 配置MQTT订阅者 3.3 配置MQTT发布者 3.4 MQTT消息处理和发送 3.4. ...
- SpringBoot集成Swagger2并配置多个包路径扫描
1. 简介 随着现在主流的前后端分离模式开发越来越成熟,接口文档的编写和规范是一件非常重要的事.简单的项目来说,对应的controller在一个包路径下,因此在Swagger配置参数时只需要配置一 ...
随机推荐
- 浩哥解析MyBatis源码(十)——Type类型模块之类型处理器
原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/6715063.html 1.回顾 之前的两篇分别解析了类型别名注册器和类型处理器注册器,此二 ...
- Arduino LiquidCrystal Library Bug Report #174181
Arduino LiquidCrystal Character LCD Driver Library BUG Report #174181 by Conmajia Effected Devices H ...
- 在 Intellij 中设置集成 Jenkins 服务器连接
如何在 Intellij 中设置集成 Jenkins 服务器连接 在Intellij中可以很方便的设置Jenkins服务器,不用登录到浏览器中,在Intellij中即可浏览所有job,开发plugin ...
- Eclipse 中 Java 项目中 .settings 文件夹作用
今天工作时,因对 .settings 文件夹误操作,耗时 6 个多小时,才了解到原因就出在 .settings 文件夹.经查阅资料,对 .settings 做如下整理: 就如setting这个名字,就 ...
- 【2017-04-20】Sql字符串注入式攻击与防御
一.攻击 所谓sql字符串注入式攻击就是在用户输入界面输入一串sql语句,来改变C#中连接数据库要执行的sql语句 通过你写的程序,直接来执行我想要执行的sql语句 例如:在这么一个程序中,sname ...
- 使用CSharp编写Google Protobuf插件
什么是 Google Protocol Buffer? Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 ...
- 【转】QQ传输文件原理参考(来自互联网)
QQ的文件发送是怎样的过程呢?通常,发送文件的计算机首先要通过消息服务器将其IP地址发送给接收计算机,当接收计算机同意接收的确认消息反馈到消息服务器后,消息服务器将据此设置好文件传输对话.随即,发送计 ...
- oracle修改有数据的字段属性
正常情况下,有数据时不能直接修改属性,我们可以先备份,然后清空现有数据,然后再修改和还原,过程如下: //先缓存表CREATE TABLE T_TABLE1 AS SELECT * FROM tabl ...
- 谷歌广告Admob在cocos2dx上通过回调实现底部Banner
首先说明我的开发平台,以免由于平台问题造成不必要的误解: cocos2dx-3.4 ndk-r9d eclipse Admob是谷歌官方广告,已经集成在google_play_service_lib包 ...
- Elasticsearch5中安装Elasticsearch-head插件
介绍 elasticsearch-head是一个用于管理Elasticsearch的web前端插件,搞过ES的同学应该都了解.该插件在es5中可以以独立服务的形式进行安装使用.本文将介绍如何操作. 相 ...