spring data elasticsearch 多索引查詢(切換索引)
阿新 • • 發佈:2018-12-11
最近在做專案的時候,遇到一個問題,要訪問不同索引(可以當成分庫去理解),如果是用直接請求的方式很容易做到,但是用了spring-data-elasticsearch好像不是很好實現,在網上看到基本上都是indexName直接賦值。如果也有這樣需求的可以試試我的方法,下面就具體寫一下:
1、首先定義indexName的賦值類
public class EsIndexChange { private static String suffix; public static void setSuffix(String suffix) { EsIndexChange.suffix = suffix; } public static String getSuffix() { return suffix; } }
2、然後直接用在@Document註解裡面
@Document(indexName = "testmail_#{ T(com.util.EsIndexChange).getSuffix() }", type = "mail")
public class MailInfo{
@Id
@Field(index = false, store = true, type = FieldType.Text)
private String id;
.......
然後再需要換索引的時候,setSuffix就可以了。