當(dāng)前位置:
首頁(yè) >
前端技术
> javascript
>内容正文
javascript
SpringData ES中字段名和索引中的列名字不一致导致的无法查询数据的解决方法
生活随笔
收集整理的這篇文章主要介紹了
SpringData ES中字段名和索引中的列名字不一致导致的无法查询数据的解决方法
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
為什么80%的碼農(nóng)都做不了架構(gòu)師?>>> ??
用SpringDataElasticsearch查詢數(shù)據(jù)的時(shí)候可以將實(shí)體中的字段名與ES中mapping中field的名字起成一樣的名字,這樣查詢的時(shí)候很方便,這樣的場(chǎng)景對(duì)于單表的同步及查詢沒(méi)有問(wèn)題,但是對(duì)于寬表就有點(diǎn)不好了。對(duì)于ES中的寬表,我們需要知道當(dāng)前字段是哪個(gè)子表的,所以需要加表別名做為前綴用于區(qū)分不同表的相同字段,比如sbi_name、ssa_name。這個(gè)時(shí)候問(wèn)題也來(lái)了,這樣的話和實(shí)體中的字段名稱不一致了,查詢就會(huì)無(wú)效了,解決方案如下:
方案1、在實(shí)體字段添加@JsonProperty的注解,使用ES原生查詢進(jìn)行查詢
@JsonProperty("ssa_name") private String name方案2、可以直接使用@Query進(jìn)行指定內(nèi)容的查詢
?
轉(zhuǎn)載于:https://my.oschina.net/sucre/blog/1789252
總結(jié)
以上是生活随笔為你收集整理的SpringData ES中字段名和索引中的列名字不一致导致的无法查询数据的解决方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Play! Framework 系列(四
- 下一篇: 自行车也能做智能升级?AliOS以想象力