nutchbean是實現nutch查詢的乙個入口,就像nutch中的crawl一樣。在nutchbean的mian函式中,以下一行**實現了初始化:
final nutchbean bean = new nutchbean(conf);
這行**涉及到的東西很多,包括初始化了lucenesearchbean、indexsearcher、fetchedsegments以及lucene中的查詢類indexsearcher(注意:前乙個indexsearcher是nutch的,而後乙個是lucene的)。
**展示如下:
final nutchbeanbean = new nutchbean(conf);
public nutchbean(configuration conf) throws ioexception
public nutchbean(configuration conf, path dir) throws ioexception
初始化lucenesearchbena的**:
publiclucenesearchbean(configuration conf, path indexdir, path indexesdir)
throws ioexception
privatevoid init(path indexdir, path indexesdir)
throws ioexception else else
listvdirs = newarraylist();
filestatus fstats =fs.liststatus(indexesdir, hadoopfsutil.getpassdirectoriesfilter(fs));
path directories =hadoopfsutil.getpaths(fstats);
for(int i = 0; ipath indexdone = newpath(directories[i], indexer.done_name);
if(fs.isfile(indexdone))
}
directories = new path[vdirs.size() ];
for(int i = 0;vdirs.size()>0; i++)
this.searcher = newindexsearcher(directories, this.conf);
}
}
indexsearcher的**如下:
public indexsearcher(path indexdirs, configuration conf) throwsioexception
init(new multireader(readers),conf);
}
private void init(indexreader reader, configuration conf) throwsioexception
初始化luceneindexsearcher
privateindexsearcher(indexreader r, boolean closereader)
}
初始化segmentbean
public fetchedsegments(configurationconf, path segmentsdir)
throws ioexception
}
this.segupdater.start();
}
注意:在實現跨索引查詢的時候,除了修改lucenesearchbean中的初始化**,還得修改sgementbean中的**。
MyBatis之初始化
mybatis初始化的主要工作是載入並解析mybatis config.xml配置檔案 對映配置檔案以及相關的註解資訊。mybatis初始化的入口是 sqlsessionfactorybuilder build reader reader,string environment,properties ...
筆記 初始化列表之初始化順序
一 前面已經介紹了初始化列表的好處,尤其對於類型別的變數來說,會提高效率,下面來介紹必須放在初始化列表的情況 無關效率問題 1 常量成員,因為常量 const 只能初始化不能賦值 雖說不可以賦值,但是可以通過指標的方式來訪問修改該值 所以必須放在初始化列表裡面。2 引用型別,引用必須在定義的時候初始...
AE vc 開發之初始化
定義ao初始化物件 iaoinitializeptr m pao 在com介面初始化後加入如下 if win32 winnt 0x0400 hresult hres coinitializeex null,coinit multithreaded else hresult hres coinitia...