libro
www.tuyano.com
Google App Engine for Java(GAE/J)プログラミング入門

Search Serviceによる全文検索 (4/7)

作成:2012-06-02 15:14
更新:2012-06-02 15:14

■DocumentをIndexから削除するには?

ついでといってはなんですが、保存されているDocumentの削除についても説明しておきましょう。削除も、Indexに用意されているメソッドを使って行います。「remove」というものです。これは以下のように呼び出します。
《Index》.remove(《List》);

他にもいくつか削除関係のメソッドはありますが、これが基本といってよいでしょう。引数には、Listインスタンスが渡されます。これは、java.utilにあるコレクションフレームワークのListのことです。このListは一体何かというと、削除するDocumentIDをまとめたListなのです。――では、保存されたDocumentを削除するまでの流れを整理しておきましょう。

1. 削除するDocumentを取り出す
まず最初に、削除するDocumentIndexから取り出します。これは、ちょっと待って下さい。この後に、Documentの検索について説明を行いますので、その検索機能を利用して、削除したいDocumentをあらかじめ取り出しておく、と考えてください。

2. Listを用意する
ArrayList<String> 変数 = new ArrayList();
削除するDocumentのIDをまとめるListを用意します。これは一般的にはArrayListあたりでよいでしょう。IDはString値ですので、総称型でStringの値を保管するよう指定しておきます。

3. DocumentのIDを取得し、Listに保管する
《List》.add(《Document》.getId());
Listに、削除したいDocumentのIDをaddします。IDは、Documentの「getId」というメソッドで得ることができます。

4. removeで削除する
《Index》.remove(《List》);
Listの準備が整ったら、removeIndexからDocumentを削除します。これで作業終了です。


削除は、検索と密接につながりがあります。何しろ、削除するためには、まず「削除したいDocumentを検索して取り出す」という作業をしないといけないのですから。というわけで、いよいよ検索関係に話を進めましょう。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

※関連コンテンツ

「Google App Engine for Java(GAE/J)プログラミング入門」に戻る