https://es.yemengying.com/5/5.3/5.3.1.html
search
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); QueryStringQueryBuilder queryString = null; for(String item : fields){ queryString = new QueryStringQueryBuilder(searchStr); queryString.field(item); boolQueryBuilder.should(queryString); } NativeSearchQueryBuilder queryBuilder = new NativeSearchQueryBuilder() .withQuery(boolQueryBuilder); SearchQuery searchQuery = queryBuilder .withSort( SortBuilders.fieldSort("updatedAt").order( SortOrder.DESC)).withPageable(pageable).build(); FacetedPage<Picture> page = pictureRepository.search(searchQuery);
save
if (p.getInuse() != null && p.getInuse().equals(Shelf.on.getValue()) && p.getExamineStatus() != null && p.getExamineStatus().equals( CommEnum.EXAMINE_STATUS.ALREADY.getKey()) && p.getStatus() != null && p.getStatus().equals(Picture.STATUS_YES)) { p.setPnamepinyin(Pinyin4jUtil.converterToSpell(p.getPname())); p.setPnamepinyinshort(Pinyin4jUtil.converterToFirstSpell(p .getPname())); if (p.getLabelIds() != null) { p.setLabelpinyin(Pinyin4jUtil.converterToSpell(p.getLabelIds())); p.setLabelpinyinshort(Pinyin4jUtil.converterToFirstSpell(p .getLabelIds())); } pictureRepository.save(p); }
配置
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:elasticsearch="http://www.springframework.org/schema/data/elasticsearch" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd http://www.springframework.org/schema/data/elasticsearch http://www.springframework.org/schema/data/elasticsearch/spring-elasticsearch-1.0.xsd"> <!-- <elasticsearch:node-client id="client" local="true"/> --> <elasticsearch:transport-client id="client" cluster-name="${elasticsearch.clusterName}" cluster-nodes="${elasticsearch.clusterNodes}"/> <bean name="elasticsearchTemplate" class="org.springframework.data.elasticsearch.core.ElasticsearchTemplate"> <constructor-arg name="client" ref="client"/> </bean> <elasticsearch:repositories base-package="cn.elasticsearch.repository" /> </beans>