SpringBoot集成elasticsearch支持字段映射

本文讲述了在SpringBoot集成elasticsearch时遇到的字段命名问题,包括驼峰命名与下划线命名的冲突,以及解决方案。通过调整版本、配置、注解和自定义EntityMapper,成功实现了字段映射。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、问题描述

Java代码属性字段多使用驼峰命名法,而mysql、elasticsearch等数据存储系统中字段多采用下划线命名法。mysql使用tk.mybatis+@Column注解即可轻松实现Java对象持久化存储字段映射,本文主要解决在elasticsearch集成过程中遇到的问题及如何字段映射

2、集成版本列表

SpringCloud、SpringBoot、elasticsearch版本依赖度很高,这也是这次集成遇到的大问题,且elasticsearch在3.2以后版本才引入了@Field的name属性,因此将此次的集成版本列出如下:

项目 版本
SpringCloud Greenwich.SR2
SpringBoot 2.1.2
elasticsearch 3.2.3

3、启动yml文件配置

spring:
	data:
       elasticsearch:
          repositories:
              enabled: true
          cluster-name: "es-bigdata"
          cluster-nodes: xx.xx.xx.xx:9300,xx.xx.xx.xx:9300,xx.xx.xx.xx:9300

4、SpringBoot启动类上需要加注解

@EnableElasticsearchRepositories(basePackages = "com.xx.xx.xx.repository")

5、Java持久化对象定义

package com.xx.xx.xx.model.es;

import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值