Lo Spider
Lo spider è un programma in linguaggio Java che si connette al database mysql e scansiona il file
system dei calcolatori
su cui è fatto girare alla ricerca di file con estensione ".mp3".
Quando il programma ne trova uno, lo apre (servendosi delle funzioni presenti nel package
"de.vdheide.mp3") alla ricerca dei tag id3.
Ottenute le informazioni, il programma passa al DBMS la riga corrispondente a ciò che ha trovato.
Sono state utilizzate anche alcune librerie standard di Java. In particolare:
Il programma offre inoltre la possibilitá di fornire alcuni parametri di input per un maggiore controllo dell'output:
- "-h" --> per ottenere un aiuto riassuntivo sui possibili parametri in input
- "-d c:\cartella" --> per indicare al programma la directory da cui iniziare la scansione.
N.B.:il programma cercherà in c:\cartella e in tutte le sue subdirectory.
N.B.2:di default la cartella di ricerca é quella in cui si trova il programma.
- "-r c:\cartella\in_rete" --> per indicare al programma la directory di condivisione in rete del computer corrente.
N.B.:di default la cartella di condivisione é quella in cui si trova il programma.
- "-i 145.23.556.4" --> per indicare al programma l'indirizzo ip della macchina.
N.B.:di default il programma trova da solo l'indirizzo ip della macchina (127.0.0.1 in caso di assenza di rete).
- "-n DRportatile" --> per indicare al programma il nome della macchina.
N.B.:di default il programma trova da solo il nome della macchina.
- "-c" --> per indicare al programma di cancellare tutte le precedenti informazioni fornite dalla macchina corrente.
- "-s db.stat.unipd.it" --> per indicare al programma il nome del server su cui risiede Mysql.
N.B.:di default il programma cerca Mysql sul computer corrente (server=localhost).
- "-u daniele" --> per indicare al programma l'username con il quale ci si vuole connettere a Mysql.
N.B.:di default "rampoldi".
- "-p daniele" --> per indicare al programma la password con cui connettersi a Mysql
N.B.:di default "rampoldi".
- "-b mybdd" --> per indicare al programma il database che si intende utilizzare
N.B.:di default "daniele".
Se per esempio facessimo partire il programma in questo modo:
java Smp3 -d c:\file condivisi\mp3 -r c:\file condivisi -i 123.123.123.123 -n DR2 -c -s db.stat.unipd.it
-u daniele -p daniele -b miabdd
il programma:
- cercherebbe nella directory c:\file condivisi\mp3
- sarebbe a conoscenza che la cartella c:\file condivisi é disponibile per tutti gli utenti della rete
- identificherebbe il computer come DR2, con indirizzo ip 123.123.123.123
- tenterebbe di connettersi al database miabdd di Mysql sul server db.stat.unipd.it con username daniele e password daniele
- cancellerebbe dal database tutte le precedenti osservazioni provenienti dalla "coppia" ip=123.123.123.123 e nome_host=DR2
E' da notare come l'ordine dell'input dei parametri non influisce (...almeno non dovrebbe...)
sul funzionamento del programma.
Notiamo infine che abbiamo utilizzato fino ad ora il termine "spider" per il nostro programma,
ma esso non si comporta propriamente come uno spider. In particolare possiamo evidenziare
come la ricerca non sia di tipo casuale-probabilistico, ma di tipo esaustivo.
In secondo luogo, mentre gli spider sul web utilizzano i link come "ponte" tra due file, il nostro programma
utilizza il file system (ogni cartella corrisponde ad una potenziale ancora).
Per una spiegazione più specifica del programma, guardare il codice commentato riga per riga.
Data creazione: 17 Settembre 2010
Data ultima modifica: 30 Dicembre 2012