Vous êtes sur la page 1sur 11

TP1 -RI-L3 ISIL

Séance de TP en ligne du 19/09/2020


Outils de développements
- Eclipse
- Bibliothèque Lucene 5.3.1
- Bibliothèque Luke 5.3.1

01
Outils de développements
Nous allons utiliser trois bibliothèques de Lucene pour indexer et des documents.

(1) Faire un clic droit sur le nom du projet et choisir "Build Path"
(2) Cliquer sur "Configure Build Path...", puis aller dans la rubrique "Libraries"
dans la fenêtre qui s'affiche.
(3) Dans "Libraries", choisir "Add External JARs..." à droite
(4) Introduire les JARs se trouvant sur les chemins suivant un par un :
- C:\Users\...\lucene-5.3.1\analysis\common\lucene-analyzers-common-
5.3.1.jar
- C:\Users\...\lucene-5.3.1\core\lucene-core-5.3.1.jar
- C:\Users\...\lucene-5.3.1\queryparser\lucene-queryparser-5.3.1.jar
- Une fois les JARs importés, cliquer sur le bouton "Apply and Close"

02
Activité 1: indexer des documents

Ecrire en java, une classe qui permet de:


- Créer 5 documents (un document pour un article), sachant que un
vous devez choisir 5 articles dans le fichier Articles.txt.
- Ajouter les champs suivants: title, author, year, venue, id et abstract
aux documents crées.
- Créer un index.
- Vérifier comment les informations sont stockées dans l'index en
utilisant Luke.

03
Activité 1: indexer des documents

TextField
TextField

TextField
TextField
TextField

TextField

04
Activité 1: indexer des documents

IntField
StringField

IntField
StringField

05
Activité 1: indexer des documents

(1) Importer les classes correspondantes des bibliothèques Lucene, ces classes
sont :

import org.apache.lucene.analysis.standard.StandardAnalyzer
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.document.DoubleField;
import org.apache.lucene.document.IntField;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.FSDirectory;

06
Activité 1: indexer des documents

(2) Créer une document en ajoutant de différents champs

Créer le champ «price»


Créer un document « doc »
Field price = new DoubleField(“price”, 15.00, Field.Store.YES);
Document doc = new Document();
Ajouter le champ price au document « doc »
doc.add(price);

Créer le champ « title » Créer le champ « author»


Field title = new TextField(“title”, “Great Field author = new TextField(“author”, “Charles Dickens”,
Expectations”,Field.Store.YES); Field.Store.YES);
Ajouter le champ title au document « doc » Ajouter le champ author au document « doc »
doc.add(title); doc.add(author);

07
Activité 1: indexer des documents

(3) Indexer le document

StandardAnalyzer analyzer = new StandardAnalyzer();

Directory directory = FSDirectory.open(“le chemin de votre index”);

IndexWriterConfig config = new IndexWriterConfig(analyzer);

IndexWriter iwriter = new IndexWriter(directory, config);

iwriter.addDocument(doc);

iwriter.close(); 08
Vérifier les indexes des documents avec luke

09
Vérifier les indexes des documents avec luke

10