赞
踩
elaticsearch有很多的java客户端,像transportclient,jestclient,springdata。但是还有一种bboss可以让我们像操作mybatis一样的来操作elasticsearch,并且可以和springboot无缝整合,非常的方便快捷。
1.首先引入依赖。
- <dependency>
- <groupId>com.bbossgroups.plugins</groupId>
- <artifactId>bboss-elasticsearch-spring-boot-starter</artifactId>
- <version>5.7.5</version>
- </dependency>
2.添加一个配置类,指明mapper位置,类似于mybatis的mapperScan
- @Configuration
- public class EsConfig {
-
- @Bean
- public ClientInterface generateClient(){
- return ElasticSearchHelper.getConfigRestClientUtil("esmapper/dsl.xml");
- }
- }
3.mapper中写入查询语句
- <property name="searchList">
- <![CDATA[
- {
- "query": {
- "match": {
- "name":#[name]
- }
- },
- "size":10
- }
- ]]>
- </property>
4.开始调用
- @RestController
- public class EsController {
-
- @Autowired
- private ClientInterface clientInterface;
-
- @GetMapping("demos")
- public ResponseEntity<List<Demo>> getDemos(@RequestParam String name){
- Map<String, Object> params = new HashMap<>();
- params.put("name", name);
- ESDatas<Demo> searchList = clientInterface.searchList("demo/_doc/_search", "searchList", params, Demo.class);
- List<Demo> datas = searchList.getDatas();
- return ResponseEntity.ok(datas);
- }
- }
5.postman调用
完毕,真的像mybatis那样来操作es,真的是非常的清爽。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。