葉明的javablog

          java學(xué)習(xí)天堂,個(gè)人關(guān)于其他blog:blog.javaworker.cn,歡迎大家訪問(wèn)
          posts - 64, comments - 50, trackbacks - 0, articles - 3

          1、Document文件

          Document是lucene自己定義的一種文件格式,lucene使用docement來(lái)代替對(duì)應(yīng)的物理文件或者保存在數(shù)據(jù)庫(kù)中的數(shù)據(jù)。因此Document只能作為數(shù)據(jù)源在Lucene中的數(shù)據(jù)存貯的一種文件形式。

          Document只是負(fù)責(zé)收集數(shù)據(jù)源,因?yàn)椴煌奈募梢詷?gòu)建同一個(gè)Document。只要用戶將不同的文件創(chuàng)建成Document類型的文件,Lucene就能快速找到查找并且使用他們。

          對(duì)于一個(gè)Document文件,可以同時(shí)增加多個(gè)Field。Lucene中對(duì)于每個(gè)數(shù)據(jù)源是使用Field類來(lái)表示的。多個(gè)Field組成一個(gè)Document,多個(gè)Document組成一個(gè)索引文件。Document與Field關(guān)系如果一所示

           

          此時(shí),我們?nèi)タ纯碊ocument這個(gè)類的源代碼。Document采用默認(rèn)不帶參數(shù)的構(gòu)造函數(shù),但是我們他在創(chuàng)建的時(shí)間,
                  產(chǎn)生兩個(gè)變量:
          fields和 boost

          其中fields是創(chuàng)建了一個(gè)arrayList,其主要是保存Field類

          Boost主要是設(shè)置該doc的優(yōu)先級(jí)

          其方法:add(Fieldable field)增加一個(gè)field對(duì)象

              removeField(String name)  根據(jù)name移除一個(gè)ield對(duì)象(找到一個(gè)就返回)

          removeFields(String name)  根據(jù)name移除所有的field對(duì)象

          Field getField(String name)  根據(jù)名字找到該Field對(duì)象。

          Fieldable getFieldable(String name)  根據(jù)名字找到Fieldable子類(Fieldable是 接口,具體有Filed來(lái)實(shí)現(xiàn))

          String get(String name) 根據(jù)名字,找到給Filed對(duì)象中包含的內(nèi)容

          public final byte[] getBinaryValue(String name) 主要查找Doc中包含有二進(jìn)制field 數(shù)據(jù)(如果不存在,則返回null)
              public final List getFields() 直接返回該Doc中包含的Field。
              

          Feedback

          # re: Lucene(2.4.1)技術(shù)研究(3)--Document源代碼  回復(fù)  更多評(píng)論   

          2009-03-30 21:28 by 勝客
          .

          # re: Lucene(2.4.1)技術(shù)研究(3)--Document源代碼  回復(fù)  更多評(píng)論   

          2009-03-31 09:21 by 李子涵
          恩`~最近偶也在研究Lucene``想做個(gè)搜索引擎看看效果`可以共同討論一下``

          # re: Lucene(2.4.1)技術(shù)研究(3)--Document源代碼  回復(fù)  更多評(píng)論   

          2009-03-31 10:58 by lovajava_ye
          呵呵,一起學(xué)習(xí)
          主站蜘蛛池模板: 毕节市| 潍坊市| 旅游| 光泽县| 莫力| 邵阳县| 高清| 新巴尔虎右旗| 准格尔旗| 章丘市| 盐源县| 库尔勒市| 屏东市| 车致| 吉木萨尔县| 屏边| 周至县| 资兴市| 辰溪县| 龙岩市| 香河县| 荥阳市| 阿拉善左旗| 昆山市| 沧源| 兖州市| 桐庐县| 嵩明县| 泉州市| 左云县| 庆元县| 东乡族自治县| 新安县| 德庆县| 白水县| 建昌县| 夏邑县| 咸丰县| 堆龙德庆县| 木里| 五寨县|