ChatGPT 学习 ES & lucene 底层写入原理,源码

2023-05-16

一直有个疑问“学习最新版lucene 数据写入相关的源码,应该看哪些源码,以什么顺序看(先看什么,后看什么)?”

对于Lucene的数据写入过程,可以分为以下几个阶段

在学习Lucene的数据写入相关的源码时,可以按照以下阶段的顺序进行学习和理解,以便更好地掌握Lucene的数据写入过程。同时,也需要了解一些相关的类和方法,例如DocumentsWriter、SegmentInfo、IndexWriterConfig等类和方法。

  1. 文档解析阶段:将文档转化为Lucene内部的Document对象。可以使用Analyzer进行文本分析和处理,例如分词、过滤、大小写转换等操作。

  2. 文档加入缓存阶段:将解析出的Document对象加入到内存中的缓存中,通常称为DocumentsWriter。

  3. 索引写入阶段:DocumentsWriter会将缓存中的文档转换成Segment,并将Segment写入磁盘。如果内存缓存中的文档数量达到一定的阈值,DocumentsWriter会触发一次Segment的写入。

  4. Segment合并阶段:Lucene的索引存储结构是由多个Segment组成的。当多个Segment的数量达到一定的阈值时,Lucene会进行Segment的合并操作,以便优化索引的查询效率和存储空间使用。

  5. 索引刷新阶段:将内存中的Segment刷新到磁盘中,并将新的Segment信息添加到SegmentInfo中。

  6. 索引提交阶段:当多个Segment的数量达到一定的阈值或者IndexWriter关闭时,Lucene会将索引提交,以便保存索引的信息。

在具体的源码学习中,可以按照以下步骤进行

  1. 了解IndexWriter的基本用法和实现原理。可以查看官方文档和相关书籍,了解IndexWriter的构造函数、commit方法、addDocument方法、deleteDocuments方法等基本用法,并对IndexWriter的实现原理有一个大概的了解。

  2. 学习DocumentsWriter的实现原理。DocumentsWriter是Lucene内存中的一个缓存,用于将文档加入缓存中,并将缓存中的文档转换为Segment进行写入。可以查看DocumentsWriter的源码,了解DocumentsWriter的实现原理和主要方法。

  3. 学习Document、Field、Term等相关类的实现原理。Document、Field、Term等类是Lucene索引中的基本单位,需要深入了解它们的实现原理和相关方法。

  4. 学习Analyzer、TokenStream等相关类的实现原理。Analyzer、TokenStream等类是Lucene用于对文本进行分析和处理的类,需要了解它们的实现原理和相关方法。

  5. 学习Segment的实现原理和写入过程。Segment是Lucene索引中的一个单元,需要了解Segment的实现原理和写入过程,以及Segment合并的实现原理和过程。

  6. 学习IndexWriterConfig、IndexCommit等相关类的实现原理。IndexWriterConfig、IndexCommit等类是Lucene用于配置IndexWriter和管理索引提交的类,需要了解它们的实现原理和相关方法。

在学习过程中,可以使用调试工具和日志输出等方式,深入了解Lucene的数据写入过程和相关类和方法的实现细节,以便更好地理解和掌握Lucene的数据写入相关的源码。同时,也需要结合Lucene的官方文档、参考书籍、技术博客等资源进行学习和实践,加深对Lucene的理解和应用。

列出来lucene相关的源码

  在学习这些类时,应该注意它们之间的关系和依赖关系,以便更好地理解Lucene的内部工作原理。同时,也应该查阅Lucene官方文档和源代码注释,以便更好地理解这些类的实现和用法。

要学习最新版的Lucene数据写入相关的源码,可以按照以下顺序阅读:

  1. IndexWriter类: IndexWriter类是Lucene用于创建和更新索引的主要入口点。这个类负责将文档写入索引并管理索引的打开和关闭。可以从IndexWriter类的构造函数开始学习它的实现。

  2. DocumentsWriter类: DocumentsWriter类是IndexWriter的一个内部类,它负责将文档写入内存缓冲区,并在缓冲区满时将其刷新到磁盘上的单个段中。学习这个类可以了解Lucene是如何将文档写入磁盘的。

  3. SegmentWriter类: SegmentWriter类是DocumentsWriter的一个内部类,它负责将文档写入单个段。了解这个类可以深入了解Lucene索引的内部工作原理。

  4. FieldsWriter类: FieldsWriter类是SegmentWriter的一个内部类,它负责将文档字段写入磁盘。学习这个类可以深入了解Lucene索引的字段写入流程。

  5. TermsHash类: TermsHash类是DocumentsWriter的另一个内部类,它负责将文档中的术语写入内存哈希表中。了解这个类可以更好地理解Lucene是如何进行分词和词项化的。

  6. TermVectorsWriter类: TermVectorsWriter类是FieldsWriter的一个内部类,它负责将文档的术语向量写入磁盘。学习这个类可以了解Lucene是如何处理术语向量的。

  7. 相关的其他类: 除了以上列出的类之外,还有一些其他的类与Lucene的数据写入有关。例如,Analyzer类、Document类和Field类等都可以深入了解。

学习这些类的实现可以深入了解Lucene是如何在内存和磁盘之间管理和传输数据的。在学习这些类时,可以查阅Lucene官方文档和源代码注释,以便更好地理解这些类的实现和用法。

  1. FSDirectory类: FSDirectory类是Lucene用于管理索引目录的类。在将文档写入索引时,需要将索引写入磁盘,而FSDirectory类就是负责管理这些索引文件的类。可以学习这个类来了解Lucene是如何在磁盘上管理索引文件的。

  2. IndexOutput和IndexInput类: 这些类是Lucene用于在磁盘上读取和写入二进制文件的类。在将文档写入磁盘时,需要将文档的二进制数据写入磁盘文件中,而IndexOutput类就是负责将数据写入磁盘的类。在读取磁盘上的索引文件时,需要使用IndexInput类读取这些文件的内容。

  3. Codec类: Codec类是Lucene用于对索引进行编解码的类。Lucene支持多种编解码方式,例如默认的Lucene70Codec和其他定制的编解码器。了解这个类可以深入了解Lucene的索引编解码过程。

  4. DocValuesWriter和DocValuesConsumer类: DocValuesWriter和DocValuesConsumer类是Lucene用于将文档值写入磁盘的类。这些值可以用于排序、聚合和筛选等操作。了解这些类可以深入了解Lucene是如何处理文档值的。

  5. NormsWriter和NormsConsumer类: NormsWriter和NormsConsumer类是Lucene用于将规范化因子写入磁盘的类。规范化因子用于在搜索时对字段进行加权,了解这些类可以深入了解Lucene是如何进行字段加权的。

这些类主要涉及Lucene的索引和搜索功能,其中包括索引创建、读取、提交,搜索查询和结果排序等。在学习时,可以结合具体的应用场景,选择相应的类进行深入了解。同时,也需要注意Lucene的性能和安全等问题,对Lucene进行合理配置和使用。

这些类主要涉及Lucene的搜索功能,其中包括对搜索结果的处理和展示,以及对搜索条件的过

滤、模糊搜索、数值范围搜索、词项范围搜索、前缀搜索等功能的实现。如果要学习最新版Lucene数据写入相关的源码,可以先从IndexWriter类开始,该类是Lucene用于写入索引数据的类。可以先了解IndexWriter类的基本用法和实现原理,然后再深入了解相关的类和方法,例如DocumentsWriter、Document、Field、Term、SegmentInfo、SegmentInfoPerCommit等类和方法。

在学习IndexWriter类的过程中,可以涉及到Lucene的索引存储结构、索引优化、多线程写入、数据合并等方面的知识。同时,也需要了解一些相关的类和方法,例如Analyzer、IndexOptions、FieldType、IndexWriterConfig、IndexCommit等类和方法。在学习过程中,建议先从简单的类和方法开始,逐渐深入复杂的类和方法,以便更好地理解Lucene的数据写入相关的源码。

  1. LiveDocsFormat类: LiveDocsFormat类是Lucene用于管理删除文档的类。在索引文档时,有时需要删除某些文档,而LiveDocsFormat类就是负责管理这些已删除文档的类。了解这个类可以深入了解Lucene是如何删除文档的。

  2. MergePolicy和MergeScheduler类: MergePolicy和MergeScheduler类是Lucene用于控制索引段合并的类。在将文档写入索引时,Lucene会将文档写入多个索引段中,当这些段达到一定大小时,就需要将它们合并为更大的段。MergePolicy和MergeScheduler类就是负责管理这个过程的类。了解这些类可以深入了解Lucene的索引合并过程。

  3. DirectoryReader和SegmentReader类: DirectoryReader和SegmentReader类是Lucene用于读取索引的类。在搜索文档时,需要从索引中读取数据,而这些类就是负责读取索引的类。了解这些类可以深入了解Lucene是如何读取索引的。

  4. PostingFormat类: PostingFormat类是Lucene用于管理词项位置和频率信息的类。在将文档写入索引时,Lucene会记录文档中每个词项的位置和出现频率,而PostingFormat类就是负责管理这个信息的类。了解这个类可以深入了解Lucene是如何记录文档中的词项信息的。

  5. Similarity类: Similarity类是Lucene用于计算文档相似度的类。在搜索文档时,需要计算文档与查询之间的相似度,而Similarity类就是负责计算相似度的类。了解这个类可以深入了解Lucene是如何计算文档相似度的。

  6. FuzzyQuery类: FuzzyQuery类是Lucene用于模糊搜索的类。在搜索时,有时候需要考虑单词的拼写错误或变体,而FuzzyQuery类就是用于实现这个功能的类。

  7. PhraseQuery类: PhraseQuery类是Lucene用于短语搜索的类。在搜索时,有时候需要匹配文档中的短语,而PhraseQuery类就是用于实现这个功能的类。

  8. QueryParser类: QueryParser类是Lucene用于解析用户查询语句的类。在搜索时,用户输入的查询语句需要经过解析,将其转换为Lucene可以理解的查询对象,而QueryParser类就是用于实现这个功能的类。

  9. IndexWriterConfig类: IndexWriterConfig类是Lucene用于配置IndexWriter对象的类。在创建IndexWriter对象时,需要指定一些参数,而IndexWriterConfig类就是用于设置这些参数的类。

  10. Directory类: Directory类是Lucene用于表示索引存储位置的类。在创建IndexWriter或IndexSearcher对象时,需要指定索引存储位置,而Directory类就是用于表示这个位置的类。

  11. Analyzer类: Analyzer类是Lucene用于对文档进行分词和处理的类。在将文档写入索引时,需要对文档进行分词和处理,而Analyzer类就是用于实现这个功能的类。

  12. Document类: Document类是Lucene用于表示文档的类。在将文档写入索引时,需要将文档转换为Lucene可以理解的对象,而Document类就是用于表示这个对象的类。

  13. IndexSearcher类: IndexSearcher类是Lucene用于搜索索引的类。在搜索时,需要创建IndexSearcher对象,并使用它来执行搜索操作。

  14. BooleanQuery类: BooleanQuery类是Lucene用于实现布尔查询的类。在搜索时,有时候需要将多个查询条件组合起来进行查询,而BooleanQuery类就是用于实现这个功能的类。

  15. TopDocs类: TopDocs类是Lucene用于存储搜索结果的类。在执行搜索操作后,会返回TopDocs对象,其中包含了满足查询条件的文档列表和相关的文档评分信息。

  16. ScoreDoc类: ScoreDoc类是Lucene用于表示搜索结果中的文档和评分信息的类。在TopDocs对象中,每个文档都对应一个ScoreDoc对象,其中包含了文档的编号和评分信息。

  17. Explanation类: Explanation类是Lucene用于解释评分结果的类。在搜索时,评分是一个很重要的指标,而Explanation类就是用于帮助我们理解评分结果的类。

  18. Sort类: Sort类是Lucene用于排序搜索结果的类。在搜索时,有时候需要按照某个字段进行排序,而Sort类就是用于实现这个功能的类。

  19. QueryFilter类: QueryFilter类是Lucene用于实现查询过滤器的类。在搜索时,有时候需要对搜索结果进行过滤,而QueryFilter类就是用于实现这个功能的类。

  20. CachingWrapperFilter类: CachingWrapperFilter类是Lucene用于实现缓存过滤器的类。在搜索时,有时候需要对搜索结果进行缓存,而CachingWrapperFilter类就是用于实现这个功能的类。

  21. CustomScoreQuery类: CustomScoreQuery类是Lucene用于实现自定义评分的类。在搜索时,有时候需要根据业务需求进行自定义评分,而CustomScoreQuery类就是用于实现这个功能的类。

  22. MultiSearcher类: MultiSearcher类是Lucene用于在多个索引之间进行搜索的类。在搜索时,有时候需要同时搜索多个索引,而MultiSearcher类就是用于实现这个功能的类。

  23. FuzzyQuery类: FuzzyQuery类是Lucene用于实现模糊查询的类。在搜索时,有时候需要进行拼写错误纠正或者模糊匹配,而FuzzyQuery类就是用于实现这个功能的类。

  24. PhraseQuery类: PhraseQuery类是Lucene用于实现短语查询的类。在搜索时,有时候需要查询文本中的短语,而PhraseQuery类就是用于实现这个功能的类。

  25. PrefixQuery类: PrefixQuery类是Lucene用于实现前缀查询的类。在搜索时,有时候需要查询文本中以某个前缀开头的单词,而PrefixQuery类就是用于实现这个功能的类。

  26. RangeQuery类: RangeQuery类是Lucene用于实现范围查询的类。在搜索时,有时候需要查询文本中某个字段的值在一定范围内的文档,而RangeQuery类就是用于实现这个功能的类。

  27. TermQuery类: TermQuery类是Lucene用于实现词项查询的类。在搜索时,有时候需要查询文本中某个单词的出现情况,而TermQuery类就是用于实现这个功能的类。

  28. WildcardQuery类: WildcardQuery类是Lucene用于实现通配符查询的类。在搜索时,有时候需要查询文本中符合一定规则的单词,而WildcardQuery类就是用于实现这个功能的类。

  29. BooleanQuery类: BooleanQuery类是Lucene用于实现布尔查询的类。在搜索时,有时候需要查询满足多个条件的文档,而BooleanQuery类就是用于实现这个功能的类。它可以将多个查询条件进行组合,包括AND(交集)、OR(并集)和NOT(排除)等操作。

  30. BoostQuery类: BoostQuery类是Lucene用于实现查询加权的类。在搜索时,有时候需要对某些查询条件进行加权,以达到更精确的搜索结果,而BoostQuery类就是用于实现这个功能的类。

  31. ConstantScoreQuery类: ConstantScoreQuery类是Lucene用于实现常量得分查询的类。在搜索时,有时候需要对多个查询条件进行组合,并对所有满足条件的文档都赋予一个相同的分值,而ConstantScoreQuery类就是用于实现这个功能的类。

  32. DisjunctionMaxQuery类: DisjunctionMaxQuery类是Lucene用于实现最大化查询的类。在搜索时,有时候需要查询满足多个条件中最相关的文档,而DisjunctionMaxQuery类就是用于实现这个功能的类。它可以将多个查询条件进行组合,并找出其中得分最高的文档。

  33. MultiPhraseQuery类: MultiPhraseQuery类是Lucene用于实现多短语查询的类。在搜索时,有时候需要查询文本中包含多个短语的文档,而MultiPhraseQuery类就是用于实现这个功能的类。

  34. PayloadScoreQuery类: PayloadScoreQuery类是Lucene用于实现payload得分查询的类。在搜索时,有时候需要根据文档中的payload信息来计算得分,而PayloadScoreQuery类就是用于实现这个功能的类。

  35. SynonymQuery类: SynonymQuery类是Lucene用于实现同义词查询的类。在搜索时,有时候需要将某些词语视为同义词,并进行查询,而SynonymQuery类就是用于实现这个功能的类。

  36. FunctionScoreQuery类: FunctionScoreQuery类是Lucene用于实现自定义评分查询的类。在搜索时,有时候需要根据自定义的评分函数来计算得分,而FunctionScoreQuery类就是用于实现这个功能的类。

  37. TermVectorsReader类:TermVectorsReader类是Lucene用于读取词向量的类。在搜索时,有时候需要对词向量进行查询和分析,而TermVectorsReader类就是用于实现这个功能的类。

  38. FieldInvertState类:FieldInvertState类是Lucene用于表示索引中的文档域信息的类。在创建索引时,需要对文档域进行分析,并将其存储到索引中,而FieldInvertState类就是用于表示这些信息的类。

  39. IndexCommit类:IndexCommit类是Lucene用于表示索引提交信息的类。在创建索引时,需要将索引进行提交,以便进行搜索,而IndexCommit类就是用于表示这些提交信息的类。

  40. Sort类:Sort类是Lucene用于实现搜索结果排序的类。在搜索时,有时候需要对搜索结果进行排序,而Sort类就是用于实现这个功能的类。

  41. SortField类:SortField类是Lucene用于表示排序字段的类。在进行搜索结果排序时,需要指定排序的字段和排序方式,而SortField类就是用于表示这些信息的类。

  42. QueryRescorer类:QueryRescorer类是Lucene用于在搜索结果中重新计算得分的类。在搜索时,有时候需要根据一些特定的规则对搜索结果进行二次排序,而QueryRescorer类就是用于实现这个功能的类。

  43. IndexWriterConfig类:IndexWriterConfig类是Lucene用于配置索引写入器的类。在创建索引时,需要对索引写入器进行配置,以满足不同的需求,而IndexWriterConfig类就是用于实现这个功能的类。

  44. DirectoryReader类:DirectoryReader类是Lucene用于读取索引的类。在搜索时,需要读取索引来获取搜索结果,而DirectoryReader类就是用于实现这个功能的类。

  45. ParallelCompositeReader类:ParallelCompositeReader类是Lucene用于将多个索引合并成一个索引的类。在搜索时,有时候需要同时搜索多个索引,而ParallelCompositeReader类就是用于实现这个功能的类。

  46. SegmentInfos类:SegmentInfos类是Lucene用于表示索引中的段信息的类。在创建索引时,需要将索引分成多个段,以便进行优化和管理,而SegmentInfos类就是用于表示这些段信息的类。

  47. SegmentReader类:SegmentReader类是Lucene用于读取索引中的一个段的类。在进行搜索时,需要读取索引中的一个或多个段来获取搜索结果,而SegmentReader类就是用于实现这个功能的类。

  48. ChecksumIndexInput类:ChecksumIndexInput类是Lucene用于读取索引数据并校验校验和的类。在读取索引数据时,需要进行校验以确保数据的完整性,而ChecksumIndexInput类就是用于实现这个功能的类。

  49. ChecksumIndexOutput类:ChecksumIndexOutput类是Lucene用于写入索引数据并计算校验和的类。在写入索引数据时,需要计算校验和以确保数据的完整性,而ChecksumIndexOutput类就是用于实现这个功能的类。

  50. FilteredQuery类:FilteredQuery类是Lucene用于对搜索结果进行过滤的类。在搜索时,有时候需要根据一些条件对搜索结果进行过滤,而FilteredQuery类就是用于实现这个功能的类。

  51. FuzzyQuery类:FuzzyQuery类是Lucene用于进行模糊搜索的类。在搜索时,有时候需要进行模糊搜索以获取更全面的搜索结果,而FuzzyQuery类就是用于实现这个功能的类。

  52. NumericRangeQuery类:NumericRangeQuery类是Lucene用于进行数值范围搜索的类。在搜索时,有时候需要根据一定的数值范围来获取搜索结果,而NumericRangeQuery类就是用于实现这个功能的类。

  53. TermRangeQuery类:TermRangeQuery类是Lucene用于进行词项范围搜索的类。在搜索时,有时候需要根据一定的词项范围来获取搜索结果,而TermRangeQuery类就是用于实现这个功能的类。

  54. TopDocs类:TopDocs类是Lucene用于表示搜索结果的类。在进行搜索时,需要获取搜索结果并对其进行处理和展示,而TopDocs类就是用于表示这些搜索结果的类。

  55. TopFieldDocs类:TopFieldDocs类是Lucene用于表示带有排序字段的搜索结果的类。在进行搜索结果排序时,需要获取带有排序字段的搜索结果并对其进行处理和展示,而TopFieldDocs类就是用于表示这些搜索结果的类。

  56. PrefixQuery类:PrefixQuery类是Lucene用于进行前缀搜索的类。在搜索时,有时候需要根据词项的前缀来获取搜索结果,而PrefixQuery类就是用于实现这个功能的类。

  57. SegmentInfos类:SegmentInfos类是Lucene用于表示索引中的段信息的类。在创建索引时,需要将索引分成多个段,以便进行优化和管理,而SegmentInfos类就是用于表示这些段信息的类。

  58. SegmentReader类:SegmentReader类是Lucene用于读取索引中的一个段的类。在进行搜索时,需要读取索引中的一个或多个段来获取搜索结果,而SegmentReader类就是用于实现这个功能的类。

  59. ChecksumIndexInput类:ChecksumIndexInput类是Lucene用于读取索引数据并校验校验和的类。在读取索引数据时,需要进行校验以确保数据的完整性,而ChecksumIndexInput类就是用于实现这个功能的类。

  60. ChecksumIndexOutput类:ChecksumIndexOutput类是Lucene用于写入索引数据并计算校验和的类。在写入索引数据时,需要计算校验和以确保数据的完整性,而ChecksumIndexOutput类就是用于实现这个功能的类。

  61. FilteredQuery类:FilteredQuery类是Lucene用于对搜索结果进行过滤的类。在搜索时,有时候需要根据一些条件对搜索结果进行过滤,而FilteredQuery类就是用于实现这个功能的类。

  62. FuzzyQuery类:FuzzyQuery类是Lucene用于进行模糊搜索的类。在搜索时,有时候需要进行模糊搜索以获取更全面的搜索结果,而FuzzyQuery类就是用于实现这个功能的类。

  63. NumericRangeQuery类:NumericRangeQuery类是Lucene用于进行数值范围搜索的类。在搜索时,有时候需要根据一定的数值范围来获取搜索结果,而NumericRangeQuery类就是用于实现这个功能的类。

  64. TermRangeQuery类:TermRangeQuery类是Lucene用于进行词项范围搜索的类。在搜索时,有时候需要根据一定的词项范围来获取搜索结果,而TermRangeQuery类就是用于实现这个功能的类。

  65. TopDocs类:TopDocs类是Lucene用于表示搜索结果的类。在进行搜索时,需要获取搜索结果并对其进行处理和展示,而TopDocs类就是用于表示这些搜索结果的类。

  66. TopFieldDocs类:TopFieldDocs类是Lucene用于表示带有排序字段的搜索结果的类。在进行搜索结果排序时,需要获取带有排序字段的搜索结果并对其进行处理和展示,而TopFieldDocs类就是用于表示这些搜索结果的类。

  67. PrefixQuery类:PrefixQuery类是Lucene用于进行前缀搜索的类。在搜索时,有时候需要根据词项的前缀来获取搜索结果,而PrefixQuery类就是用于实现这个功能的类。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ChatGPT 学习 ES & lucene 底层写入原理,源码 的相关文章

  • 6-27复习

    1 while语句的一般形式如下 xff0c 其中的循环体语句只能是一条语句 while 表达式 循环体语句 答案 xff1a T 解析 xff1a for 循环和while 循环循环体都是一条语句 xff0c 但是可以加 变成复合语句 x
  • 如何在Ubtun上安装vscode,保姆级教程

    Ubtun安装vscode 打开vm虚拟机安装VM tools 主要目的 xff1a 实现win上的文件与vm虚拟机上的文件进行共享 具体过程 参照B站 Ubuntu安装vmware tools和open vm tools Ubuntu安装
  • python matplotlib生成图表基础

    本节的目标是绘制一个y 61 x 2的函数图像 plot图表 绘制图表 plot xff08 xff09 函数绘制图表 xff0c 传入参数 xff0c 输入值和输出值 xff0c 还可以指定其他参数 plt span class toke
  • Cannot make a static reference to the non-static method XXX() from the type XXX

    不能用调用静态方法的方式调用一个非静态的方法 xff1a 我在定义方法的时候不是static的 出现这个报错是因为java调用任何方法都要实例化 xff0c c 43 43 里有函数的概念 xff0c 但是java里的函数实际上是类的方法
  • 【2022_10_17】PX4学习

    commander cpp内 int Commander custom command int argc char argv 221行 该函数接受所有commander输入的参数 xff0c strcmp比较后调用不同的函数 strcmp返
  • how to solveE:Unmet dependencies.Try‘apt --fix ^^^^^

    span class token function sudo span span class token function apt span span class token function install span span class
  • PX4报错FAILED: external/Stamp/sitl_gazebo/sitl_gazebo-configure解决

    PX4仿真gazebo报错 make px4 sitl default gazebo Configuring incomplete errors occurred span class token operator span See als
  • 汉诺塔问题的解法

    问题描述 相传在古印度圣庙中 xff0c 有一种被称为汉诺塔 Hanoi 的游戏 该游戏是在一块铜板装置上 xff0c 有三根杆 编号A B C xff0c 在A杆自下而上 由大到小按顺序放置64个金盘 如下图 游戏的目标 xff1a 把A
  • 51单片机——串口通信(发送和接受数据)

    目录 一 实现的功能 二 串口通信 2 1单片机发送数据 2 1 1串口初始化 2 1 2串口发送程序 2 1 3发送效果 2 2单片机接收数据 2 2 1串口初始化 2 2 2接收数据程序 2 2 3接收效果 一 实现的功能 通过串口 x
  • 无人机仿真SLAM_gazebo&promethues

    无人机仿真 总体概述系统要求 PX4固件简介无人机固件整体框图无人机软件框图无人机硬件模型 Mavlink模块位置估计与姿态估计模块安装与编译二次开发 机载计算机程序控制模块估计模块仿真模块SLAM模块SLAM效果演示 总体概述 无人机仿真
  • 编译orbslam2时,Pangolin could not be found because dependency Eigen3 could not be found,解决方法

    是因为使用了pangolin0 6版本 xff0c 需要重新安装0 5版本的pangolin 1 在pangolin的build文件夹下 sudo make uninstall 2 usr local include 删除pangolin文
  • CMakeLists.txt常用语法

    0 绪 cmake 是一个跨平台 开源的构建系统 它是一个集软件构建 测试 打包于一身的软件 它使用与平台和编译器独立的配置文件来对软件编译过程进行控制 1 常用命令 1 1制定cmake最小版本 cmake minimum require
  • Vue 模板

    原文 在Vue中 xff0c Vue模板对应的就是Vue中的View xff08 视图 xff09 部分 xff0c 也是Vue重中之一 xff0c 而在Vue中要了解Vue模板我们就需要从两个方面来着手 xff0c 其一是Vue的模板语法
  • Ubuntu:系统分区

    在系统分区之前 先进行磁盘分区 这里针对的是window10系统下安装ubuntu双系统 需要在window10下进行磁盘分区来安装ubuntu系统 一 磁盘分区 win10系统下 右击此电脑 xff0c 点击管理就进入磁盘管理 这时候可以
  • Mac 安装node.js

    Mac系统安装Node js xff0c 下载地址 如上图安装路径 xff1a This package will install Node js v16 19 1 to usr local bin node span class toke
  • MySQL 常用函数(二)

    ABS函数 xff1a 求绝对值 绝对值函数 ABS x 返回 x 的绝对值 正数的绝对值是其本身 xff0c 负数的绝对值为其相反数 xff0c 0 的绝对值是 0 span class token keyword SELECT span
  • MyBatis Mapper常用动态SQL之foreach 、if、choose、where、when

    if语句 lt if gt 判断语句 xff0c 用于单条件分支条件判断 使用 lt if gt 元素对参数username和jobs进行非空判断 xff0c 并动态组装SQL xff1a span class token keyword
  • Java 查看官方Java API文档

    话不多说 xff0c 直接上方法 打开官网址 xff1a http www oracle com technetwork cn java javase downloads index html 方式一 在线浏览 点击Java 文档 xff1
  • iOS-微信分享成功回调问题

    本人用ShareSDK做分享和第三方登录 xff0c 登录先不讲 xff0c 本节只做分享成功或失败后回调问题 相信好多人会有这个疑惑就是在微信分享成功后没有成功后的方法回调 xff0c 我在ShareSDK论坛也发表过帖子问过 xff0c
  • iOS-常见三种加密(MD5、非对称加密,对称加密)

    任何应用的开发中安全都是重中之重 xff0c 在信息交互异常活跃的现在 xff0c 信息加密技术显得尤为重要 在app应用开发中 xff0c 我们需要对应用中的多项数据进行加密处理 xff0c 从而来保证应用上线后的安全性 xff0c 给用

随机推荐