Lucene的官方网站(Apache的顶级项目):http://lucene.apache.org/

1、什么是Lucene?

  Lucene 是 apache 软件基金会的一个子项目,由 Doug Cutting 开发,是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的库,提供了完整的查询引擎和索引引擎,部分文本分析引擎。Lucene 的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。Lucene 是一套用于全文检索和搜寻的开源程式库,由 Apache 软件基金会支持和提供。

  Lucene 提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻。在 Java 开发环境里 Lucene 是一个成熟的免费开源工具。就其本身而言,Lucene 是当前以及最近几年最受欢迎的免费 Java 信息检索程序库。人们经常提到信息检索程序库,虽然与搜索引擎有关,但不应该将信息检索程序库与搜索引擎相混淆。

  ElasticSearch存在自己的生态系统,ELK,E是指ElasticSearch即全文检索,L是指Logstash即数据采集,K是指Kibana即报表。

  ElasticSearch是基于Lucene的分布式全文检索系统,可以认为是一个分布式的NoSql数据库,而且支持全文检索。

  Lucene是一个单机版程序,Es是一个集群版,底层使用的是Lucene,提供更方便的操作API。
注意:数据库和全文检索的区别。
  a、数据库使用的是模糊查询。
  b、全文检索可以快速,准确找到你想要的数据,快是指先从索引库中查找,准是指对查询条件进行分词,然后对查询的结果进行相关度排序,得分越高,排的越靠前。

aaarticlea/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAABAAAAAMBCAYAAABx5saoAAAACXBIWXMAAAsTAAALEwEAmpwYAAAgAElEQVR4nOzdeXxMV/8H8E8mEbKvyKJJaWtpn7Y0VEORlhIaoqG1FKVIxE6QtkosRSK1pLFUhOTRWEpJSqpiFyWCFI/QCEIIEgnZ92Tm90eeub9MZiYzk8SSZz7v16uvl7nn3HPP3Dv6cr7n3O/RkUgkEhARERERERHR/zTRi+4AERERERERET17DAAQERERERERaQEGAIiIiIiIiIi0AAMARERERERERFqAAQAiIiIiIiIiLcAAABEREREREZEWYACAiIiIiIiISAswAEBERERERESkBRgAICIiIiIiItICDAAQERERERERaQEGAIiIiIiIiIi0AAMARERERERERFqAAQAiIiIiIiIiLcAAABEREREREZEWYACAiIiIiIiISAswAEBERERERESkBRgAICIiIiIiItICDAAQERERERERaQEGAIiIiIiIiIi0AAMARERERERERFqAAQAiIiIiIiIiLcAAABEREREREZEWYACAiIiIiIiISAswAEBERERERESkBRgAICIiIiIiItICDAAQERERERERaQEGAIiIiIiIiIi0AAMARERERERERFqAAQAiIiIiIiIiLcAAABEREREREZEWYACAiIiIiIiISAswAEBERERERESkBRgAICIiIiIiItICDAAQERERERERaQEGAIiIiIiIiIi0AAMARERERERERFqAAQAiIiIiIiIiLcAAABEREREREZEWYACAiIiIiIiISAswAEBERERERESkBRgAICIiIiIiItICDAAQERERERERaQEGAIiIiIiIiIi0AAMARERERERERFqAAQAiIiIiIiIiLcAAABEREREREZEWYACAiIiIiIiISAswAEBERERERESkBRgAICIiIiIiItICDAAQERERERERaQEGAIiIiIiIiIi0AAMARERERERERFqAAQAiIiIiIiIiLcAAABEREREREZEWYACAiIiIiIiISAswAEBERERERESkBRgAICIiIiIiItICDAAQERERERERaQEGAIiIiIiIiIi0AAMARERERERERFqAAQAiIiIiIiIiLcAAABEREREREZEWYACAiIiIiIiISAswAEBERERERESkBRgAICIiIiIiItICDAAQERERERER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8eeff55v3+eff16sAa65uTnq1q0rs+3LL7/EgwcP8P79e2RlZSEnJwdaWlpo3rw5Jk2aJEyp79atG+zs7ODm5oaGDRvm67t9+/Yyg0AAwp1+sVgMsVgMIHcWgJSampowg6J169a4c+cOunfvjl69ehVraU11dXXY2trC1tYWb968QVBQEKKjo2FmZlaq5RhLqzSfd1GVpAigsbExHB0dZdo4OjrCzMwM//zzD1JSUmT+nqTU1dVRu3Zt9OjRQ6ZA5YdMTU2xf/9+HDp0CImJiejSpQs6d+5cjKsiovKmJpH3r56IiIiUJikpic/vE6mg+/fvIyMjQ+aOvbxtxTmeiCgvJgCIiIiIiIiIVICo8CZEREREREREVNExAUBERERERESkApgAICIiIiIiIlIBTAAQERERERERqQAmAIiIiIiIiIhUABMARERERERERCqACQAiIiIiIiIiFcAEABEREREREZEKYAKAiIiIiIiISAUwAUBERERERESkApgAICIiIiIiIlIBTAAQERERERERqQAmAIiIiIiIiIhUABMARERERERERCqACQAiIiIiIiIiFcAEABEREREREZEKYAKAiIiIiIiISAUwAUBERERERESkApgAICIiIiIiIlIBTAAQERERERERqQAmAIiIiIiIiIhUgIayAyCi/MaMGYPbt28rOwz6gLW1NXbu3KnsMMoNv4dERPQpqmj/H/P/009TRfseKQpnABB9gvifxKcpIiJC2SGUK34PiYjoU1TR/j/m/6efpor2PVIUzgAg+oSp6g+mT5G1tbWyQ1Aafg+JiOhTUZH/P+b/p5+Oivw9Ki3OACAiIiIiIiJSAUwAEBEREREREakAJgCIiIiIiIiIVAATAEREREREREQqgAkAIiIiIiIiIhXABAARERERERGRCmACgIiIiIiIiEgFMAFAREREREREpAKYACAiIiIiIiJSAUwAEBEREREREakAJgCIiIiIiIiIVAATAEREREREREQqgAkAIiIiIiIiIhXABAARERERERGRCmACgIiIiIiIiEgFMAFAREREREREpAKYACAiIiIiIiJSAUwAEBEREREREakAJgCIiIiIiIiIVAATAEREREREREQqgAkAIiIiIiIiIhXABAARERERERGRCmACgIiIiIiIiEgFMAFAREREREREpAI0lB0AERERUUUmFosRGBiIo0eP4uHDh0hMTFR2SETFYmhoiAYNGqBv377o378/RCLeIySqrJgAICIiIiohsViMmTNn4vz588oOhajEEhMTcfXqVVy9ehVnz57Fxo0bmQQgqqSYACAiIiIqocDAQJw/fx4NGzbEvHnz0KhRI+jo6Cg7LKJiSU1Nxf3797FmzRqcO3cOgYGBGDhwoLLDIqIywNQeERERUQkdPXoUADBv3jy0atWKg3+qkHR0dNCqVSt4eHgAAEJCQpQcERGVFSYAiIiIiEro4cOHAIBGjRopORKi0pN+j2NiYpQcCRGVFSYAiIiIiEpIWvCPd/6pMtDV1QUAFrIkqsSYACAiIiIiIiJSAUwAEBEREREREakAJgCIiIiIiIiIVAATAEREREREREQqgAkAIiIiIiIiIhXABAARERERERGRCmACgIiIiIiIiEgFMAFAREREREREpAKYACAiIiIiIiJSAUwAEBEREREREakAJgCIiIiIiIiIVAATAEREREREREQqgAkAIiIiIiIiIhXABAARERERERGRCmACgIioEkpMTERycrKywyAiIiKiTwgTAEREZejly5dwd3eHu7s7EhISinzc2rVr4e3tXeLzdu/eHWPHji3x8URERERU+TABQERUhtauXYtLly7h0qVLmDt3LtLS0op03MGDBxESElLG0RERERGRKtFQdgBERJXVqVOnEBoaih49eqBNmzZYvXo13NzcsHXrVujq6grtnJycULduXfz0009y+1m4cCGOHTsmd19ERAQ8PT3h4+OTb19sbCysra3lHkNEREREqocJACKiMvDkyRMsX74cxsbG+P7772FoaIicnBysW7cOkydPxvbt26Gnpwcgd6D+MXZ2dqhTp47w/sWLFwgODoahoSEAwMHBAU2aNJE5Zv78+TAxMcGMGTOEbX5+fvj3338VdYlEREREVMEwAUBEpGCpqamYPXs20tLSsG7dOmGgPmzYMGRnZ2PTpk349ttvsX37dujo6BTaX48ePdCjRw8AQGZmJlxcXCASibBy5UoAgKWlJSwtLWWOmT9/PrS1tWFvby9su3z5MhMARERERCqMCQAiIgVKT0/HtGnT8ODBA7i5uaFdu3Yy+0eOHIl3797hl19+wdSpU7Fly5Zi9b927Vrcvn0bkydPRvv27eHv719g25SUFJn9jx49AgBhW9++fVGlSpVinZ+IiIiI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AAADEAAAAAAAAGAAAgAAAAAAAAxAAAAAAAAAgAEIAAAAAAAAMAABAAAAAAAABiAAAAAAAADAAAQAAAAAAAAYgAAAAAAAAAADEAAAAAAAAGAAAgAAAAAAAAxAAAAAAAAAgAEIAAAAAAAAMAABAAAAAAAABiAAAAAAAADAAAQAAAAAAAAYgAAAAAAAAAADEAAAAAAAAGAAAgAAAAAAAAxAAAAAAAAAgAEIAAAAAAAAMAABAAAAAAAABiAAAAAAAADAAAQAAAAAAAAYgAAAAAAAAAADEAAAAAAAAGAAAgAAAAAAAAxAAAAAAAAAgAEIAAAAAAAAMAABAAAAAAAABiAAAAAAAADAAAQAAAAAAAAYgAAAAAAAAAADEAAAAAAAAGAAAgAAAAAAAAxAAAAAAAAAgAEIAAAAAAAAMAABAAAAAAAABiAAAAAAAADAAAQAAAAAAAAYgAAAAAAAAAADEAAAAAAAAGAAAgAAAAAAAAxAAAAAAAAAgAEIAAAAAAAAMAABAAAAAAAABiAAAAAAAADAAAQAAAAAAAAYgAAAAAAAAAADEAAAAAAAAGAAAgAAAAAAAAxAAAAAAAAAgAEIAAAAAAAAMAABAAAAAAAABiAAAAAAAADAAAQAAAAAAAAYgAAAAAAAAAADEAAAAAAAAGAAAgAAAAAAAAxAAAAAAAAAgAEIAAAAAAAAMAABAAAAAAAABiAAAAAAAADAAAQAAAAAAAAYgAAAAAAAAAADEAAAAAAAAGAAAgAAAAAAAAxAAAAAAAAAgAEIAAAAAAAAMAABAAAAAAAABiAAAAAAAADAAP8BD1HFIbafwLkAAAAASUVORK5CYII=" alt="" />

2、建立索引的过程,是先进行分词,建立索引,将文档存储的信息与索引进行关联。查询的过程,就是先到索引库中查找,然后查找出对应的文档ID,然后根据文档ID去文档库中查询出真正的文档。

项目使用maven创建,所以引入所需的依赖包。pom.xml配置如下所示:

 <project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.</modelVersion>
<groupId>com.bie</groupId>
<artifactId>luceneDemo</artifactId>
<version>0.0.-SNAPSHOT</version> <!-- 定义一下常量 -->
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<encoding>UTF-</encoding>
</properties> <dependencies>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.</version>
<scope>test</scope>
</dependency>
<!-- lucene的核心 -->
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-core</artifactId>
<version>6.6.</version>
</dependency>
<!-- lucene的分词器,有标准的英文相关的分词器,没有中文的 -->
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-analyzers-common</artifactId>
<version>6.6.</version>
</dependency>
<!-- 查询解析器 -->
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-queryparser</artifactId>
<version>6.6.</version>
</dependency>
<!-- 各种查询方式 -->
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-queries</artifactId>
<version>6.6.</version>
</dependency>
<!-- 关键字高亮 -->
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-highlighter</artifactId>
<version>6.6.</version>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-demo</artifactId>
<version>6.6.</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.</version>
</dependency>
</dependencies> </project>

创建一个实体类,如下所示:

 package com.bie.pojo;

 import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field.Store;
import org.apache.lucene.document.LongPoint;
import org.apache.lucene.document.StoredField;
import org.apache.lucene.document.StringField;
import org.apache.lucene.document.TextField; /**
*
* @author biehl
*
*/
public class Article { private Long id; private String title; private String content; private String author; private String url; public Article() {
} public Article(Long id, String title, String content, String author, String url) {
super();
this.id = id;
this.title = title;
this.content = content;
this.author = author;
this.url = url;
} public Long getId() {
return id;
} public void setId(Long id) {
this.id = id;
} public String getTitle() {
return title;
} public void setTitle(String title) {
this.title = title;
} public String getContent() {
return content;
} public void setContent(String content) {
this.content = content;
} public String getAuthor() {
return author;
} public void setAuthor(String author) {
this.author = author;
} public String getUrl() {
return url;
} public void setUrl(String url) {
this.url = url;
} public Document toDocument() {
// Lucene存储的格式(Map装的k,v)。
Document doc = new Document();
// 向文档中添加一个long类型的属性,建立索引。LongPoint不分词,建立索引。
doc.add(new LongPoint("id", id));
// 在文档中存储。
doc.add(new StoredField("id", id)); // 设置一个文本类型,会对内容进行分词,建立索引,并将内容在文档中存储。
doc.add(new TextField("title", title, Store.YES));
// 设置一个文本类型,会对内容进行分词,建立索引,存在文档中存储 / No代表不存储。
doc.add(new TextField("content", content, Store.YES)); // StringField,不分词,建立索引,Store.YES文档中存储。
doc.add(new StringField("author", author, Store.YES)); // StoredField不分词,不建立索引,在文档中存储。
doc.add(new StoredField("url", url));
return doc;
} public static Article parseArticle(Document doc) {
Long id = Long.parseLong(doc.get("id"));
String title = doc.get("title");
String content = doc.get("content");
String author = doc.get("author");
String url = doc.get("url");
Article article = new Article(id, title, content, author, url);
return article;
} @Override
public String toString() {
return "id : " + id + " , title : " + title + " , content : " + content + " , author : " + author + " , url : "
+ url;
} }

搭建的项目结构如下所示,由于使用了中文分词器,所以需要引入别人写好的依赖(原始作者很久不更新了,这个是github上面下载使用的),你可以打成jar包依赖进去也可以的,和配置文件,引入即可,不然项目无法正常启动。

IKAnalyzer.cfg.xml配置文件引入ext.dic、stopword.dic配置文件。

ext.dic配置文件是扩展词库,可以写入自己的词条。

stopword.dic配置文件是停用词库(不和谐的词条可以被停用掉的),可以写入停用的词条。

main2012.dic配置文件是标准的词典。里面是默认配置好的,不可以进行更改的。

然后就是你的主类了,主要包含,添加索引和文档,查询索引和文档,删除索引和文档,更新索引和文档(即先删除后插入),多字段查询索引和文档,全字段内查询索引和文档,组合查询,布尔查询索引和文档,非连续范围查找索引(相当于in or),连续范围查找(相当于<,>)。

 package com.bie.lucene;

 import java.io.IOException;
import java.nio.file.Paths; import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.LongPoint;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.index.Term;
import org.apache.lucene.queryparser.classic.MultiFieldQueryParser;
import org.apache.lucene.queryparser.classic.ParseException;
import org.apache.lucene.queryparser.classic.QueryParser;
import org.apache.lucene.search.BooleanClause;
import org.apache.lucene.search.BooleanQuery;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.MatchAllDocsQuery;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.ScoreDoc;
import org.apache.lucene.search.TermQuery;
import org.apache.lucene.search.TopDocs;
import org.apache.lucene.store.FSDirectory;
import org.junit.Test;
import org.wltea.analyzer.lucene.IKAnalyzer; import com.bie.pojo.Article; /**
*
* @author biehl
*
*/
public class LuceneDemo { /**
* 往用lucene写入数据
*
* @throws IOException
*/
@Test
public void luceneCreate() throws IOException {
// 创建几个文章对象
Article article = new Article();
article.setId(1008611L);
article.setAuthor("别先生");
article.setTitle("学习Lucene");
article.setContent("好好学习,争取早日成为Java高级工程师,加油!别先生");
article.setUrl("https://www.cnblogs.com/biehongli/p/11637267.html"); Article article2 = new Article();
article2.setId(1008612L);
article2.setAuthor("别先生");
article2.setTitle("学习Lucene");
article2.setContent("好好学习,争取早日成为Java初级工程师,加油!别先生");
article2.setUrl("https://www.cnblogs.com/biehongli/p/11637267.html"); Article article3 = new Article();
article3.setId(1008615L);
article3.setAuthor("别先生");
article3.setTitle("学习Lucene");
article3.setContent("好好学习,争取早日成为Java中级工程师,加油!别先生");
article3.setUrl("https://www.cnblogs.com/biehongli/p/11637267.html"); // 指定数据写入到文件夹
String indexPath = "F:\\lucene\\index";
// 打开指定的文件夹
FSDirectory fsDirectory = FSDirectory.open(Paths.get(indexPath));
// 创建一个标准分词器StandardAnalyzer,一个字分一次
// Analyzer analyzer = new StandardAnalyzer();
// IKAnalyzer中文分词器
Analyzer analyzer = new IKAnalyzer(true);
// 写入索引的配置,设置了分词器
IndexWriterConfig indexWriterConfig = new IndexWriterConfig(analyzer);
// 指定了写入数据目录和配置
IndexWriter indexWriter = new IndexWriter(fsDirectory, indexWriterConfig);
// 创建一个文档对象。Lucene只识别文档格式。
Document document = article.toDocument();
Document document2 = article2.toDocument();
Document document3 = article3.toDocument();
// 通过IndexWriter写入
indexWriter.addDocument(document);
indexWriter.addDocument(document2);
indexWriter.addDocument(document3);
// 关闭IndexWriter
indexWriter.close();
} @Test
public void luceneSearch() throws IOException, ParseException {
// 指定要去查询的文件夹
String indexPath = "F:\\lucene\\index";
// 中文分词器
Analyzer analyzer = new IKAnalyzer(true);
// Analyzer analyzer = new IKAnalyzer(true);
DirectoryReader directoryReader = DirectoryReader.open(FSDirectory.open(Paths.get(indexPath)));
// 索引查询器IndexSearcher
IndexSearcher indexSearcher = new IndexSearcher(directoryReader); String queryStr = "工程师";
// String queryStr = "高级";
// 创建一个查询条件解析器QueryParser
QueryParser parser = new QueryParser("content", analyzer);
// 对查询条件进行解析
Query query = parser.parse(queryStr); // TermQuery将查询条件当成是一个固定的词
// Query query = new TermQuery(new Term("url",
// "https://www.cnblogs.com/biehongli/p/11637267.html"));
// 在【索引】中进行查找。10代表查询出前10条数据。
TopDocs topDocs = indexSearcher.search(query, ); // 获取到查找到的文文档ID和得分
ScoreDoc[] scoreDocs = topDocs.scoreDocs;
for (ScoreDoc scoreDoc : scoreDocs) {
// 从索引中查询到文档的ID。
int doc = scoreDoc.doc;
// 在根据ID到文档中查找文档内容。
Document document = indexSearcher.doc(doc);
// 将文档转换成对应的实体类。
Article article = Article.parseArticle(document);
// 打印输出
System.out.println(article);
}
// 关闭DirectoryReader
directoryReader.close();
} @Test
public void luceneDelete() throws IOException, ParseException {
// 指定要去删除的文件夹
String indexPath = "F:\\lucene\\index";
// 指定中文分词器
Analyzer analyzer = new IKAnalyzer(true);
// 打开指定的文件夹
FSDirectory fsDirectory = FSDirectory.open(Paths.get(indexPath));
// 写入索引的配置,设置了分词器
IndexWriterConfig indexWriterConfig = new IndexWriterConfig(analyzer);
// 指定了写入数据目录和配置
IndexWriter indexWriter = new IndexWriter(fsDirectory, indexWriterConfig); // 几种查询删除的使用。
// Term词条查找,内容必须完全匹配,不分词。
// indexWriter.deleteDocuments(new Term("content", "学好")); // 指定查询条件,查询到的进行删除。
// QueryParser parser = new QueryParser("title", analyzer);
// Query query = parser.parse("高级"); // LongPoint是建立索引的。在newRangeQuery某个范围内的都进行删除。
// Query query = LongPoint.newRangeQuery("id", 1008611L, 1008612L);
// LongPoint是建立索引的。支持等值查询。
Query query = LongPoint.newExactQuery("id", 1008611L); // 删除指定的文档
indexWriter.deleteDocuments(query); // 提交
indexWriter.commit();
System.out.println("==================================删除完毕!");
// 关闭
indexWriter.close();
} /**
* lucene的update比较特殊,update的代价太高,先删除,然后再插入。
*
* @throws IOException
* @throws ParseException
*/
@Test
public void luceneUpdate() throws IOException, ParseException {
// 指定要去更新的文件夹
String indexPath = "F:\\lucene\\index";
// 指定标准的分词器
// StandardAnalyzer analyzer = new StandardAnalyzer();
// 指定中文分词器
Analyzer analyzer = new IKAnalyzer(true);
// 打开指定的文件夹
FSDirectory fsDirectory = FSDirectory.open(Paths.get(indexPath));
// 写入索引的配置,设置了分词器
IndexWriterConfig indexWriterConfig = new IndexWriterConfig(analyzer);
// 指定了写入数据目录和配置
IndexWriter indexWriter = new IndexWriter(fsDirectory, indexWriterConfig); // 指定更新的实体类信息
Article article = new Article();
article.setId(1008611L);
article.setAuthor("别先生");
article.setTitle("学习Lucene");
article.setContent("好好学习哦,争取早日成为Java高级工程师,加油啦啦!别先生");
article.setUrl("https://www.cnblogs.com/biehongli/p/11637267.html");
Document document = article.toDocument(); // 更新文档
indexWriter.updateDocument(new Term("author", "别先生"), document); // 提交
indexWriter.commit();
// 关闭
indexWriter.close();
} /**
* 可以从多个字段中查找
*
* @throws IOException
* @throws ParseException
*/
@Test
public void luceneMultiField() throws IOException, ParseException {
// 指定要去查询的文件夹
String indexPath = "F:\\lucene\\index";
// IKAnalyzer中文分词器
Analyzer analyzer = new IKAnalyzer(true);
// 打开指定的文件夹读取信息
DirectoryReader directoryReader = DirectoryReader.open(FSDirectory.open(Paths.get(indexPath)));
// 索引查询器IndexSearcher
IndexSearcher indexSearcher = new IndexSearcher(directoryReader); // 指定多字段。可以从多个字段中查找
String[] fields = { "title", "content" };
// 多字段的查询转换器MultiFieldQueryParser
MultiFieldQueryParser queryParser = new MultiFieldQueryParser(fields, analyzer);
// 对查询条件进行解析
Query query = queryParser.parse("别先生"); // 在【索引】中进行查找。10代表查询出前10条数据。
TopDocs topDocs = indexSearcher.search(query, );
// 获取到查找到的文文档ID和得分
ScoreDoc[] scoreDocs = topDocs.scoreDocs;
// 遍历查找到的文档ID和得分
for (ScoreDoc scoreDoc : scoreDocs) {
// 获取到索引ID
int doc = scoreDoc.doc;
// 根据索引ID去文档里面进行查询即可
Document document = indexSearcher.doc(doc);
// 将查询到的文档信息转换为实体类,进行输出和业务需求
Article article = Article.parseArticle(document);
System.out.println(article);
} // 关闭
directoryReader.close();
} /**
* 查找全部的数据
*
* @throws IOException
* @throws ParseException
*/
@Test
public void luceneMatchAll() throws IOException, ParseException {
// 指定要去查询的文件夹
String indexPath = "F:\\lucene\\index";
// 打开指定的文件夹读取信息
DirectoryReader directoryReader = DirectoryReader.open(FSDirectory.open(Paths.get(indexPath)));
// 索引查询器IndexSearcher
IndexSearcher indexSearcher = new IndexSearcher(directoryReader); // 查找全部的数据
Query query = new MatchAllDocsQuery(); // 在【索引】中进行查找。10代表查询出前10条数据。
TopDocs topDocs = indexSearcher.search(query, );
// 获取到查找到的文文档ID和得分
ScoreDoc[] scoreDocs = topDocs.scoreDocs;
// 遍历查找到的文档ID和得分
for (ScoreDoc scoreDoc : scoreDocs) {
// 获取到索引ID
int doc = scoreDoc.doc;
// 根据索引ID去文档里面进行查询即可
Document document = indexSearcher.doc(doc);
// 将查询到的文档信息转换为实体类,进行输出和业务需求
Article article = Article.parseArticle(document);
System.out.println(article);
} // 关闭
directoryReader.close();
} /**
* 布尔查询,可以组合多个查询条件
*
* @throws Exception
*/
@Test
public void testBooleanQuery() throws Exception {
// 指定要去查询的文件夹
String indexPath = "F:\\lucene\\index";
// 打开指定的文件夹读取信息
DirectoryReader directoryReader = DirectoryReader.open(FSDirectory.open(Paths.get(indexPath)));
// 索引查询器IndexSearcher
IndexSearcher indexSearcher = new IndexSearcher(directoryReader); // 多个查询条件。按照title查询
Query query1 = new TermQuery(new Term("author", "别先生"));
// 按照content查询
Query query2 = new TermQuery(new Term("content", "哈哈哈"));
// BooleanClause.Occur.MUST必须满足此条件
BooleanClause bc1 = new BooleanClause(query1, BooleanClause.Occur.MUST);
// BooleanClause.Occur.MUST_NOT必须不包含此内容。
// +author:别先生 -content:哈哈哈。+是必须满足,-是不能满足。
BooleanClause bc2 = new BooleanClause(query2, BooleanClause.Occur.MUST_NOT);
// 相当于and。
BooleanQuery boolQuery = new BooleanQuery.Builder().add(bc1).add(bc2).build();
System.out.println(boolQuery); // 获取到查找到的文文档ID和得分
TopDocs topDocs = indexSearcher.search(boolQuery, );
// 获取到查找到的文文档ID和得分
ScoreDoc[] scoreDocs = topDocs.scoreDocs;
// 遍历查找到的文档ID和得分
for (ScoreDoc scoreDoc : scoreDocs) {
// 获取到索引ID
int doc = scoreDoc.doc;
// 根据索引ID去文档里面进行查询即可
Document document = indexSearcher.doc(doc);
// 将查询到的文档信息转换为实体类,进行输出和业务需求
Article article = Article.parseArticle(document);
System.out.println(article);
} // 关闭
directoryReader.close();
} /**
*
* @throws Exception
*/
@Test
public void luceneQueryParser() throws Exception {
// 指定要去查询的文件夹
String indexPath = "F:\\lucene\\index";
// 打开指定的文件夹读取信息
DirectoryReader directoryReader = DirectoryReader.open(FSDirectory.open(Paths.get(indexPath)));
// 索引查询器IndexSearcher
IndexSearcher indexSearcher = new IndexSearcher(directoryReader); // 创建一个QueryParser对象。参数1:默认搜索域 参数2:分析器对象。
QueryParser queryParser = new QueryParser("title", new IKAnalyzer(true)); // 条件组合
// Query query = queryParser.parse("数据");
// Query query = queryParser.parse("title:学习 OR title:Lucene");
Query query = queryParser.parse("title:学习 AND title:Lucene");
System.out.println(query); // 在【索引】中进行查找。10代表查询出前10条数据。
TopDocs topDocs = indexSearcher.search(query, );
// 获取到查找到的文文档ID和得分
ScoreDoc[] scoreDocs = topDocs.scoreDocs;
// 遍历查找到的文档ID和得分
for (ScoreDoc scoreDoc : scoreDocs) {
// 获取到索引ID
int doc = scoreDoc.doc;
// 根据索引ID去文档里面进行查询即可
Document document = indexSearcher.doc(doc);
// 将查询到的文档信息转换为实体类,进行输出和业务需求
Article article = Article.parseArticle(document);
System.out.println(article);
} directoryReader.close();
} /**
* 范围查询
*
* @throws Exception
*/
@Test
public void luceneRangeQuery() throws Exception {
// 指定要去查询的文件夹
String indexPath = "F:\\lucene\\index";
// 打开指定的文件夹读取信息
DirectoryReader directoryReader = DirectoryReader.open(FSDirectory.open(Paths.get(indexPath)));
// 索引查询器IndexSearcher
IndexSearcher indexSearcher = new IndexSearcher(directoryReader); // 范围查找,相当于>、<这种范围查询。
Query query = LongPoint.newRangeQuery("id", 1008611L, 1008622L); System.out.println("================================================" + query); // 在【索引】中进行查找。10代表查询出前10条数据。
TopDocs topDocs = indexSearcher.search(query, );
// 获取到查找到的文文档ID和得分
ScoreDoc[] scoreDocs = topDocs.scoreDocs;
// 遍历查找到的文档ID和得分
for (ScoreDoc scoreDoc : scoreDocs) {
// 获取到索引ID
int doc = scoreDoc.doc;
// 根据索引ID去文档里面进行查询即可
Document document = indexSearcher.doc(doc);
// 将查询到的文档信息转换为实体类,进行输出和业务需求
Article article = Article.parseArticle(document);
System.out.println(article);
}
// 关闭
directoryReader.close();
} }

效果如下所示:

3、Luke 查看索引。

  索引创建完成以后生成了如上的一批特殊格式的文件,如果直接用工具打开,会显示的都是乱码。可以使用索引查看工具 Luke 来查看。
  Luke 是开源工具,代码托管在 GitHub 上,项目地址:https://github.com/DmitryKey/luke/releases,下载后解压,进入 luke 目录,如果是在Windows平台,运行 luke.bat (双击打开,需稍等片刻,使用的Java的图形化制作的工具,略慢)即可启动软件,并在 Path 中输入 index 存储的目录,即可打开索引文件,显示出索引的具体内容。

简单使用如下所示:

查找自己添加的信息如下所示:

aaarticlea/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAFYAVgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9U6KKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigBpbBpQSQDigjNfysE5NAH9U9FfysUUAf1T0V/KxRQB/VPQc1/KxQOtAH9UxbFKCSAcUYzX8rBOTQB/VPRX8rFFAH9U9FfysUUAf1UUUUUANLYNKCSAcUEZr+VgnJoA/qopCcUtIelACbiDjH40oORX8rOa/qmAxQAEkAnFIGya/lZBwa/qnAxQAtFFFACUV/KxRQB/VMWIOMUoORX8rANf1TgYoACcCkDEnGKUjNfysE0Af1T0V/KxRQB/VPRX8rFFAH9U9FfysUUAf1UUUUUAFFFFABRRRQAnev5WK/qn71/KxQB/VOTgZNAOaCMiv5Wc8dKAP6p6K/lYz7UZ9qAP6p6/lX9K/qor+Vf0oA/qnzjFfysEYNf1SkdM+lKvQc/nQB/KyBk1/VPnOaCCQRmkxtzQB/K1jOa/qmByK/laBx+NITk9KAP6picDJoyKCeOtfytZ7e/WgD+qXcPWgHIppHfn6V/K2evSgBOtf1T5obp1r+VskGgD+qTriv5WK/qmWv5WaAP6pycDJozkUN0r+VrPHbigBp60V/VOOlFAC0h6UtIelAH8rOM5r+qYHIr+VkNjNBYE9KAP6p6/lX9K/qor+Vf0oA/qnyAOaAcikK5I57V/K1kelAH9U9FfysZ9qARnpQB/VN1xX8rFf1TgV/KxQB/VRRRRQAUUUUAFFFFACd6/lYr+qfvX8rFAH9VFfyr9q/qor+VftQAUUUUAf1UV/Kv6V/VRX8q/pQB/VNjOK/lZJJr+qcdq/lYoA/qnoOa/lYoHWgD+qcCjFA6UtAH8rAHPWlOeM+tf1SkZFfys5zigD+qQnpn0pV6Dj86XGcV/KwTk0Af1Tt0PGaavJr+VoHBr+qcDFAB3r+Viv6p+9fysUAf1TkZpCMU6kPSgAGaK/lYPWigD+qckgE4pA2c1/KyDg1/VPjGaAP5WD1ooPWigD+qiv5V/Sv6qK/lX9KAP6px2r+Viv6px2r+VigAoHWigdaAP6px2r+Viv6px2r+VigD+qiiiigAooooAKKKKAE71/KxX9U5OK/lYIIoA/qoor+Vj8KPwoA/qnor+Vj8KPwoA/qmJwK/lZxjFAOD0pSc/hQB/VKO1fysV/VNmv5WSCKADrX9U+aCCR1r+VosDjigD+qXriv5WK/qm6e9fyskEUAf1Tk4GTRnIoIyK/lazx0oAT1r+qbrTCPrxX8rhPPSgBAMmjB9K/qmbp1/Kv5W89u2etADcV/VP1ppB4r+Vs9elAH9U9fyr+lf1T5Ar+VnFAH9U2QBzQDkU08nvx2r+VsnnpQB/VPX8q/XFf1Tk4r+VkcUAJigjBr+qU56/pX8rZHPT8qAP6p6/lY9K/qmJxX8rPSgD+qYdKWv5WD9KPwoA/qnor+Vj8KPwoA/qmJxX8rBGKdnjGKaeT0oA/qoooooAKKKKACiiigBCM0AAUtFACYoPFLSHpQA3ODjH404cjpX8rOa/qmAxQAHgdKbnJxj8acRmv5Wc0Af1SgZ60oAFA6UtACE4FfytYGAfev6pSMjBowKAGk+opV6Dj86XA6dq/lYJyaAP6pySBnGa/laxxTQcGlySaAF79aTHvX9Uw6UtAH8q+aXJJ5pKB1oA/qnxkUAAUDpS0AfysDk9aU9M5poOK/qnAxQB/K0PXNNPWv6pyM1/KwTmgD+qduh4zTQa/laBwa/qnxigBpPOCKcBx0r+VnNf1TAYoACM0mMU6kPSgAH0FGPYV/KwetFAH9Ux4BOKQNntX8rQODX9U+MUAA+gox7Cv5WD1ooA/qoooooAKKKKACiiigBCQOtAORSMuT17V/K1kelAH9U9FfysZ9qX8BQB/VKTiv5WCMU4dMYpDyelAH9U9FfysfhQOvSgD+qbcPWgHIppHf9K/lbJ56UAJQOtf1T59xSE0ALkAUA5FNI57/Sv5Wz16UAf1T0h6UE4pM5oA/lZ9a/qor+Vg1/VPQB/KuBk1/VPnNDdDzimgUAfytYyaCMGv6pTnOf0r+Vsjnp+VACAZNf1Tg5oboecU1eDQA+ikzigEGgD+Vigda/qnJx3pM56UALkAUA5FNI571/K2evSgD+qev5WPSv6picV/Kz0oA/qmHSlr+VnqelJn2oA/qmJwK/lZIPSgHB6Uu7PWgBuKCMGv6pcE4NfytE5NAH9VFFFFABRRRQAUUUUAJ3r+Viv6p+9fysUAAOK/qmIx61/KzX9U/XNAH8rXv6dq/qlA46UYFAGBgUAB4HSm5zxj8acRmv5WSaAAnBpKOtFABmgGigdaAP6pTxjNKvQcfnS4ziv5WCcmgD+qdunSv5WiMd6b0r+qfvQB/K0Bkda/qlBJHSjvX8rHWgD+qdulfytYGPr2r+qUjIwaMCgBufWlXoOPzpcDp2r+VgnJoA/qnIzX8rOa/qnr+Vf0oA/qlPHHPTrX8rZ69a/qmwCOaAMCgD+VjJFf1TYr+Vmv6pz3oA/lZziv6psV/Kx61/VRQAh6etNB5xinEZr+VnNAH9UhPb9RX8rZHPWv6psAigDAoAQ8AnFAO41/KyDg1/VOBigA71/KxX9U/ev5WKAP6qKKKKACiiigAooooATvX8rFf1T96/lYoA/qor+Vf0r+qcnFfys4oA/qmyAOaAcimnnnnp0r+Vs9elACAZr+qcHNfysDrTjwMYoA/qmor+Vj8KPwoA/qmJwK/lZIPSgHnpSk9M0ANxX9U/Wm7Scc9q/lbJHpQAi9RX1h8Bf+CaXxn+Pnh+11+z06x8LaDdp5ltfeIZng+0IVVldI0RnKMGyG24P05P77Eds1lRRNrEkrtLJHao5jVIm2l8HBJI5654oA1U6dMU6s0eH7T1uP8AwKl/+Ko/4R+z/wCnn/wLl/8AiqAPx+H/AARN+KYOf+E68H8f7V1/8Zr9jwp756Yqj/wj9n/08/8AgXL/APFUf8I/Z/8ATz/4Fy//ABVAH4//APDk/wCKYP8AyPPhDH+9df8Axmv2RUYAFZ3/AAj9n/08/wDgXL/8VR/wj9n/ANPP/gXL/wDFUAaVITxWcfD9pj/l4/8AAuX/AOKrOuLWXw3LbzQ3E01hJMsUsE7mTZuOFZWJJ+8RkHI57UAfy9HrRX9UanB29Kkz70AfysAZr+qbOc1/KyDg07PbFACetf1TdaYR9eK/lcJ56UAf1TE4FfyskHpQDg9KXdnrQAgFf1TA5puCef0pwGBQB/Kx1r+qfPWhunWv5Wyc9qAGYyaCMGv6pe/U1/K2eT0/KgD+qeiiigAooooAKKKKAGs2D07V/K1getf1TEA9aAMCgAPNJtr+VmigD+qfGaAMdq/lYooAUDnrX9UgJ/8A107rX8rPpQB/VIWx2pRyAcUuM1/KwTk0Af1TkcdK/lax39+lf1SkZGDRgUAANfysV/VP0xX8rFAH9Umf3uPbNUdAH/EuP/Xeb/0a9XP+W/8AwE1U0D/kHn/rvN/6NegDRoprZxxXk91+0Z4bsvivP8NNTlm8PeLplDaWuoQloNQVlO14mU4bBDAqSpyp+tAHrVFfHup+Iv2i4Pjz4U8GTeLvC97p9zcf2jqq6HpjrJZ6dHIDmYyZCGXmNQCSdpOTgk+x/HD9ozTfgZ4V1rW9U0HXLyDTkBDwWuIJHb7oEpO0AkgZ/Q0AevbuaWvi39hj4qfFz9o3X9c+I/ivWrWx8ELvsLHQLKJQhmBUljnLAIpxknLE9MCvtFTke9AC1m+IBnTcH/ntD/6NWtKs7Xv+Qd/22h/9GrQB+Pv/AAWxH/F/fA3/AGLI6/8AX1PX51ngkV/U1J/yEl/3P6mv5ZCcmgBce9AAHev6p6Q9KAP5WgKQjnrRmv6pgMCgAx7CkIr+VmgdaAP6pxS0g6UtACHmkIwK/lZoHWgB3YnIr+qUcjp+dGMigDAwKAFooooAKKKKACiiigBCcV/KwRg1/VMVyaUAgAZoA/lY61/VPmkPTrX8rhINAH9UnXFfysV/VMDg1/KzigA61/VPnrQ3TrX8rZIPagBuK/qmByK/la3Y7UhOT0oA/qnpD0r+VnPtS9D0oATBJpCMGnA8V/VIOB1/OgD8bf8Agibx8fPHWf8AoWT/AOlUFfsHoH/IPP8A13m/9GvVof6/8Dn9Kq6B/wAg8/8AXeb/ANGvQBo18U/t2aRPZfHj9nXxNptg97qdtrVxAIYHVJLgAQyJEGPHO2QDJx8x9a+1q+QP24vF9p4M+Lf7Ot/eRzTwReI7mRobaJpZW/dxp8iKCWOZBwBnmgZ0P7MX/C7L7xZ4l1P4g+EdE8K2ep3IvJLgTNNezjbtigVVfaqxrtG4+h+Ukkjw/wD4KG/tFeEk8a6b8PNZSXU9K0SH+2b/AEu3YhdSveBbWcjr/q4wC0jnkn5QMHmvWfix8Xfi9qfjjwLo/hSGw8GaV4n1UWlsmp25m1WW2jXzLm6aMnbCirhQpBbLDJXOK8j8df8ABNLXPjR+0V438V+JfEceieFb+++02wtFE91cqyjIwSFjAIIyd3070BszA/Zc+EXjf4s/sw6/4k8M/EvU/hy95q99fwaTo8CRWCMpBKgriRVyCOGwABwcc/RH/BOj40+JPjT8B5LzxVPJf6ppWoyWH9oS/fuUCK6sx7sN+Cfavk39mP4FfGr4j/CbxLpfw9+Jkfh/wLJq17pEumakjF/K4DOjKrY3BiCFI5z65r9E/gD8FdL+APwv0jwZpMhuYrJS8926bGuZmOZJCBnGT0GTgYGTQD3PR6zte/5B3/baH/0ataNZ2vf8g7/ttD/6NWgQ+T/kJr/uf1NfyykYNf1Nyf8AISXjjZ/U1bHAxmgD+VkDJoxg0o4PT86/qk70AOHav5WK/qmziv5WSCKACgda/qnoOaADOK/lYIwa/qlxmlHAAzQB/KzQOtGKUAigD+qbOK/lYIxTvamnrQB/VRRRRQAUUUUAFFFFADS2DSgkgHFBGa/lYJyaAFHJ607ryTTAcV/VPjFAH8rfbtX9UY5HT86/layQaQnJoA/qnPT1poPOMU4jNfys5oA/qmHNGKB0paAP5WAOetf1SA9v1NOIyKMACgBp69K/lbPB6/lSZwaCcmgD9FP+CKHHx98cD/qWT/6VQV+wegf8g8/9d5v/AEa9W8fv/wDgJ/pVTQP+Qef+u83/AKNegDRr5j/bP+AHiL4v6h8MPEfhPbLrfg/X47z7PJMI1eB5IWkbJ4yphQ/TdxX05ScE0Afnz4g+E/xY/ab/AGzbnVNYXWPBHgTwbcyWdjqNo72ss8WcsIH4LGXALMOAvHav0BijEKBQSQOBk5qUKBnA61Fdyrb20srcKilj9AKA3PlD/gmnGy/ArXGOQG8T6gR/30tfWnSvkv8A4Jl3H2v9na7uArKk3iC/kUN6Fx09a+taBhWdr3/IO/7bQ/8Ao1a0azte/wCQd/22h/8ARq0CPx8/4LZY/wCF++Bv+xZGf/Aqevzsx71/U0/Opr/uf1NXaAExX8rWc1/VNX8q/TFAH9UwGRzzSgY7V/KxRQB/VOTgU3JPH604jNfysk0AB4pM0daKAP6pyOOlfytds8c1/VKRkYNGMCgBhP15r+VwjnrR61/VN0oAWiiigAooooAKKKKACiiigD+VcDJr+qfI69qCCQRmk24oAXIoByMiv5Ws9vfrX9UoPHWgD+VgDNf1Tg5r+VgdaceBjFAH9U1FfysDntRn2oAQDJr+qcHNBBIIzSBcGgBSQOtAORSMuT17V/K1kelAH9UPW4/4Cap6Af8AiXkf9N5v/Rr1+DH/AATQ+Pmk/AT9puwu9fuorDQdfs5NFu7ybASDzHR43ZiQEUSRpuY9AT25r917e4fwzNcQTW88tjJK00U8EZk2FjllZRyPmJIOCMHtigDoqKzR4gsz/wA/H/gLL/8AE0f8JBZ/9PP/AICS/wDxNAGlWL4y1B9L8K6tcxWlxfyx20hS2tI98srbThVXIySferH/AAkFn/08/wDgJL/8TSHXrM/8/P8A4Cy//E0AeY/slfCe9+CvwE8M+F9TCLqsUb3F4iHISaVi7LnvjdjPtXsNZi69ZqMYuP8AwEl/+Jpf+Egs/wDp5/8AASX/AOJoA0qzteP/ABLv+20P/o1KQ+ILP0uf/ASX/wCJrPnuZPEk8FvBBNDYxyrLLNOhjLlDuCqp56gEnGMCgDVf/kJr/uf1NfyyV/UnZ3aX188sZ3xKNqsOh9xX8tpHNACAZr+qcEV/KwOtO6cUAf1S7h60A5FN25Oc/hX8reR6UAJ1r+qfvQQSOtfytE5HSgD+qaiv5WfwFJn2oA/qmJwK/lYIxSg4PSgncKAEAzX9U4ORX8rIO0UFgT0oA/qnooooAKKKKACiiigAooooAQkgE4pA2c1/KyDg1/VPjGaAP5WhnnHrSEcnmjOM1/VMBgUAfysgc9a/qkU5NO61/KwaAP6pW64/lX8rR6/4UA4oJyaAP6qKKKKAGs2D07V/K1getf1TEA9aAMCgD+VocHrX9PV1Jq+k5Fm0c0Y+7HOpIHp0Oa6sjI5pCi4+6PyoA/G8f8FsfiiAf+KG8H/983X/AMepD/wWz+KQOP8AhBfCH/fN1/8AHq/OvPWv6o/s8X/PNP8AvkUAcB/wmPin/oH2P/fL/wDxVflef+C2fxTGf+KF8Ifldf8Ax6vzqzX9UYt4h/yyT/vkUAfjkP8Agtn8UiM/8IL4Q/75uv8A49X6nnxh4pBx9gsf++X/APiq7/yIh/yzUfQUfZ4h/wAs0/75FAH44f8AD7P4pHj/AIQXwh/3zdf/AB6v1Yjk13XQEvJI4LduGjt1IDD3JJOOfWu38iL/AJ5p/wB8iv5WzQB/UzplitnAqADFXsY7V/KxRQAoHPWv6pAee/1pxGRRgAUAN3EHpX8rZA9aPWv6pulAC1/KwK/qnr+VfpigD+qXnOOee9fytHr/AIUZoJyaAP6p8ewpD/nFfys0DrQA7HfNNIwa/qmxnFfysk5oA/qoooooAKKKKACiiigBCQOtAORTWHOfbpX8rZ69KAEoHWv6p8+4oP1FAAOlLSDijNAATgZNGcihulfytZ7YoAT1r+qbrTSK/lbJ56UAIBmv6ps5zX8rI604nAx6UANxk0EYNf1S4561/K0Tk0AFHWjFKBg80AJigjBr+qXBODntX8rROTQAUDrRilHWgD+qYdKWv5WcZ6DNJ+FACda/qnz1obp1r+VokGgBuMmgjBr+qXHPWv5WicmgD+qcnAyaMignjrX8rWe3v1oA/ql64r+Viv6punvX8rJBFAH9U/Sv5WDSg89K/qkUYNAH8rQr+qfrTW5PWv5WyeelACUDrX9U9BzQADtX8rFf1TgYr+VigD+qiiiigAooooAKKKKAGseeaF6Dj86UjNfysE5NABmjNFFACgZHWgjB60gOK/qnAwKAA80hGBX8rNA60AO79aTHvX9Uw6UtAH8rAHPWv6pFyTTutfysGgD+qYkg4r+VkjBoBxQTk0Af1TkcdK/laxxnjrX9UpGRg0YwKAG7uQMV/K0Rg0ZwaCcmgD+qY8AnFJnNfytA4Nf1T4HTtQB/K2ADX9UY6dKXFfysdaAP6pz09aaOTinEZr+VgmgD+qYkg4r+VkjBoBxQTk0AL+NL1PJzX9U1FADCfUUq9Bx+dLgdO1fysE5NABQSTRRQA5ema/qkHI6fnX8rIJFBOTQB/VPRX8rFFAH9UxYg9K/laIHrSCv6p+lAC0UUUAFFFFABRRRQAhIHWgHIpGXJ69q/layPSgD+qeiv5WPwo/CgD+qeiv5WPwo/CgD+qeiv5WPwpeh5GKAP6pcjr2r+VgjBr+qbbmlAIAGaAAnFfys4r+qY9PSmgc5zQA7OK/lYIwa/qlK570o4AGaAP5Wa/qnPev5WME1/VN1oA/lZxk0EYNf1TbTnOa/lZJyaAP6pycCv5WcUA4PSlLZ7UAf1S5wKAcjIr+VrPGMfjX9Uq9KAP5WKB1r+qfPuKD9RQAZxX8rBGDX9UpFOXoOc0ABOK/lZIr+qY9PSmgdT+lAH8rXSilIyaSgD+qcnAyaMihulfytZGPp3oA/ql64r+Viv6plr+VmgD+qcnAyaM5FBGRX8rQIxigBp60Up60mKAP6qKKKKACiiigAooooATvX8rFf1T96/lYoA/qnPA6UgOTjFKRmv5WCaAP6p8ewox7Cv5WKKAP6p8A1/Kzmv6p6/lX9KAP6px0paQdKWgBrdDxn6V/K2RgZpoODQSTQAoGR1oIwetIDiv6pwMCgBG6Hj8qFPPFfysg4Nf1TgYoAO9fysV/VP3r+VigD+qfFB4paQ9KAExmlHFfysHrRQAv40D61/VPSHpQB/K0Bx/Q1/VIvQcY+tfytZINITk0Af1Tt06V/K2QBimdK/qnxQAgGa/lZJzX9U/TFfysUAf1Tnmk21/KzRQB/VMSQcV/KyRg0A4oJyaAP6pySB0r+VoqB3/Om9K/qnx1oAbnnp19acOR0r+VnNf1TAYoAWiiigAooooAKKKKAE71/KxX9U/ev5WKAP6qK/lX7V/VOTiv5WSKAEooxRigD+qiv5V/Sv6qK/lX9KAP6p84xX8rBGDX9UxXOKUAgAZoAWv5V/Sv6p8gV/KzigD+qbOMV/KwRg1/VMRn8KBwAM0AfysgZNf1Tg5pDyCM0AbTQApIHWgHIpCMmv5Wsj0oAQDJr+qfI69qQ8gjNJtx3oAdmv5WOlPBAzX9Ui9OtAH8rFf1TnvX8rFf1TkZoA/lZ9a/qm601gc1/K2evSgBK/qnPev5WK/qnPegD+Vg9aKD1ooAAMmv6pwc0EEgjNIBtNACkgdaAcimtye9fytnr0oA/qnr+Vfriv6p81/K1jFADcUEYNf1SnPX9K/lbI56flQB/VPRRRQAUUUUAFFFFACd6/lYr+qfvX8rFAH9U55oAxX8rFFAH9U+PYUY9hX8rFFAH9U5JAzjNfyskYwfekBwaMkmgD+qcdKWkHSloA/lXzS7iaSigAzRmiigAzSjmko6UAf1S5I96/lbIHrSZr+qfpQB/KwOT1p2Mc579KaDiv6pwBQA0mnL0HGKMDp2r+VgnJoAUAetf1ShiT0petfysGgD+qZjzjFKBx0r+VgGv6pwMUAfysAZNf1S7uSMV/K0Dg0ZyaAHbe+aaRg1/VNjOK/lZJzQB/VPQc4r+ViigB+OO2K/qjHI6fnX8rOT60E5NACjr1r+qQHnvTiMijAAoATGetKBjtX8rB60UAf1UUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAf//Z" alt="" />

作者:别先生

博客园:https://www.cnblogs.com/biehongli/

如果您想及时得到个人撰写文章以及著作的消息推送,可以扫描上方二维码,关注个人公众号哦。

最新文章

  1. PagerSlidingTabStrip介绍及使用,让ViewPager更绚丽
  2. Django models对象的select_related方法(减少查询次数)
  3. IOS - 多态
  4. StreamReader和StreamWrite和FileStream区别和用法
  5. 锋利的jQuery
  6. POJ 3069 Saruman&#39;s Army(萨鲁曼军)
  7. Android 怎么使用Bitmap+Canvas 自适应屏幕
  8. Java读取一个文件并打印到控制台上
  9. CSS入门学习(转)
  10. 201521123112《Java程序设计》第13周学习总结
  11. 不用第三方解码码取得图片宽高 附完整C++算法实现代码
  12. 论文翻译:Ternary Weight Networks
  13. Python随笔--正则表达式匹配IP
  14. react的项目坑
  15. c++课设
  16. 利用python scapy包进行抓包发包与ARP扫描
  17. 异常日志框架Exceptionless结合.NET Core(本地部署)
  18. ActiveMQ面试专题
  19. map() 方法
  20. AOJ.850 电缆公司的烦恼 (二分+枚举)

热门文章

  1. selenium 优化 提升性能
  2. FCC---Learn How Bezier Curves Work---定义坐标轴点的值,影响斜率,改变速度。具体调试换值既可以体会
  3. docker系列(四):数据卷
  4. split(&quot;\\,&quot;)引起的java.lang.ArrayIndexOutOfBoundsException异常解决方案
  5. 事务的四大性质:ACID
  6. [日常] lscpu查看cpu的详细信息
  7. Linux常见系统命令和远程管理命令
  8. [C0] 人工智能大师访谈 by 吴恩达
  9. GitHub官网基本介绍
  10. [Taro] taro中定义以及使用全局变量