pretty-elasticsearch-core
pretty-elasticsearch-core是基于elasticsearch 6.5.3版本的RestHighLevelClient使用工具包,可整合到spring 4.0以上的版本中。
最大的优点是快速整合,如果你只用连接单个集群,那么你只需要做三个动作:
1)加入配置文件
2)给索引对应的实体加上两个注解
3)注入esDao,并使用
GitHib地址: https://github.com/haoyanfeiyun/pretty-elasticsearch-core
一、使用说明
注1:以下使用都需要引入pretty-elasticsearch-core包,如下:
<dependency>
<groupId>com.feiniu</groupId>
<artifactId>pretty-elasticsearch-core</artifactId>
<version>1.0.1-SNAPSHOT</version>
</dependency>
注2:以下使用都需要给索引对应的实体类添加注解,标记索引名、类型和id,如下:
@ESMetaData(indexName = "stock_preempt_fulfillsuborder", indexType = "_doc")
public class StockPreemptFulfillsuborderOld{
@ESId
private String ESId;// ESId
}
1、单集群配置和使用
1.1、添加配置
#ES配置
es.server.host=stock-preempt-es.beta1:9200
1.2、使用
@Autowired
private ESDao<StockPreemptFulfillsuborderOld> ESDaoOld;
@Test
public void configOutTest() throws Exception {
StockPreemptFulfillsuborderOld stock = new StockPreemptFulfillsuborderOld();
stock.setStoreNo("1001");
List<StockPreemptFulfillsuborderOld> resultList = ESDaoOld.search(stock);
}
2、多集群配置和使用
每加入一个新的集群,都需要新加配置和ESConfig类,方便管理,ESConfig类主要修改的是配置引入名、Bean的名字即可
2.1、添加配置
#ES配置
es.server.host=stock-preempt-es.beta1:9200
#ES配置-fresh集群
fresh.es.server.host=10.202.252.3:9200
2.2、加入ESConfig类
@Configuration
@ComponentScan(basePackages = "com")
public class ESConfig {
private static final Logger LOGGER = LogManager.getLogger(ESConfig.class);
@Value("${fresh.es.server.host}")
private String host;
@Value("${fresh.es.xpark.enable:false}")
private boolean xparkEnable;
@Value("${fresh.es.xpark.username:noXpark}")
private String username;
@Value("${fresh.es.xpark.password:noXpark}")
private String password;
@Scope("singleton")
@Bean(name = "freshClient", destroyMethod = "close")
public RestHighLevelCl