使用ElasticsearchRepository和ElasticsearchRestTemplate操作Elasticsearch,Spring Boot整合Elasticsearch
warning:
这篇文章距离上次修改已过207天,其中的内容可能已经有所变动。
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.elasticsearch.core.ElasticsearchRestTemplate;
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
import org.springframework.stereotype.Service;
@Service
public class ElasticsearchService {
@Autowired
private ElasticsearchRepository<Sprit, String> spritRepository;
@Autowired
private ElasticsearchRestTemplate elasticsearchRestTemplate;
public void saveSprit(Sprit sprit) {
spritRepository.save(sprit);
}
public List<Sprit> searchSpritByName(String name) {
return spritRepository.findByName(name);
}
public void updateSprit(String id, Sprit sprit) {
sprit.setId(id);
spritRepository.save(sprit);
}
public void deleteSpritById(String id) {
spritRepository.deleteById(id);
}
public void bulkSaveSprit(List<Sprit> sprits) {
spritRepository.saveAll(sprits);
}
public void bulkUpdateSprit(List<Sprit> sprits) {
sprits.forEach(sprit -> spritRepository.save(sprit));
}
public void deleteByQuery(QueryBuilder queryBuilder) {
elasticsearchRestTemplate.delete(queryBuilder, Sprit.class);
}
}
这个代码示例展示了如何使用Spring Data Elasticsearch的ElasticsearchRepository
和ElasticsearchRestTemplate
来进行基本的CRUD操作。saveSprit
方法用于保存一个新的Sprit
对象,searchSpritByName
用于根据名称搜索Sprit
对象列表,updateSprit
用于更新一个已存在的Sprit
对象,deleteSpritById
用于根据ID删除一个Sprit
对象,bulkSaveSprit
和bulkUpdateSprit
用于批量保存和更新Sprit
对象,deleteByQuery
用于根据查询条件删除文档。
评论已关闭