@SpringBootTest
public
class
EsTest {
@Autowired
ElasticsearchRestTemplate esTemplate;
@Autowired
IndexRepository indexRepository;
@BeforeEach
public
void init() {
System.out.println(
"init"
);
indexRepository.deleteAll();
indexRepository.saveAll(ListUtil.of(
new
Index(
"1"
,
"美国留给伊拉克的是个烂摊子吗"
),
new
Index(
"2"
,
"公安部:各地校车将享最高路权"
),
new
Index(
"3"
,
"中韩渔警冲突调查:韩警平均每天扣1艘中国渔船"
),
new
Index(
"4"
,
"中国驻洛杉矶领事馆遭亚裔男子枪击 嫌犯已自首"
),
new
Index(
"5"
,
"中国天眼向全球正式开放下月世界大赛将比拼FAST脉冲星搜索"
)
));
}
@Test
void testRepositoryQuery() {
Page<Index> pageList = indexRepository.findByContent(
"中国"
, PageRequest.of(0, 10));
pageList.getContent().forEach(e -> {
System.out.println(
"repositoryQuery => "
+e);
});
}
@Test
void testTemplateQuery() {
BoolQueryBuilder queryBuilder = QueryBuilders.boolQuery()
.must(QueryBuilders.simpleQueryStringQuery(
"中国"
).field(
"content"
));
NativeSearchQuery query =
new
NativeSearchQueryBuilder()
.withQuery(queryBuilder)
.withPageable(PageRequest.of(0, 10))
.build();
SearchHits<Index> search = esTemplate.search(query, Index.
class
);
if
(search.hasSearchHits()) {
search.getSearchHits().forEach(e -> {
System.out.println(
"templateQuery => "
+e.getContent());
});
}
}
}