全文检索
顺序扫描法
全文搜索
全文搜索实现原理 1. 建立本库 2. 建立索引 3. 执行搜索 4. 过滤结果
全文搜索实现技术 基于Java的开源实现
lucene
ElasticSearch
Solr
ElasticSearch简介
特点:
分布式
高可用
多类型
多api
面向文档
异步写入
核心概念
近实时
集群
节点
索引
类型
文档
分片
副本
集成
compile('org.springframeword.boot:spring-boot-starter-data-elasticsearch')
compile('net.java.dev.jna:jna:4.3.0)
spring.data.elasticsearch.cluster-nodes=localhost:9300
spring.data.elasticsearch.properties.transport.tcp.connect-timeout=120s
文档类
@Document(indexName="blog",type="blog")
public class EsBlog implements Serializable{
private static final long serialVersionUID=lL;
@Id //主键
private String id;
private String title;
private String summary;
private String content;
//Jpa要求,防止直接使用
protected EsBlog(){}
}
资源库
public class EsBlogRepository implememts ElasticsearchRepository<EsBlog,String>{
//分页查询 去重
page<EsBlog> findDistinctEsBlogByTitleContainingOrSummaryCotainingOrContentContaining(String title,String summary,String )
}
测试
@Before
public void initRepositoryData(){
//清除所有数据
esBlogRepository.deleteAll();
esBlogRepository.save(new EsBlog())
}
@Test
public void test(){
Pageable pageable=new PageRequest(0,20);
String title=""
}
设备模型模板
Last updated
Was this helpful?