Dispensa in PDF - Dipartimento di Scienze Ambientali, Informatica e ...
Dispensa in PDF - Dipartimento di Scienze Ambientali, Informatica e ...
Dispensa in PDF - Dipartimento di Scienze Ambientali, Informatica e ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Carnielli Efrem: Programmazione a componenti<br />
Applicazioni Client-Server e database<br />
deve essere prima sottoposto ad un precompilatore per embedded sql per Java, se<br />
il l<strong>in</strong>guaggio <strong>di</strong> programmazione ospitante è Java, per C se utilizzo C e così via.<br />
Le parti <strong>di</strong> co<strong>di</strong>ce SQL, dopo la precompilazione, vengono “tradotte” <strong>in</strong> <strong>di</strong><br />
chiamate a particolari librerie denom<strong>in</strong>ate sql – Call Level Interface (sql - CLI). Queste<br />
librerie forniscono un <strong>in</strong>sieme <strong>di</strong> strumenti pre<strong>di</strong>sposti per accedere al DBServer.<br />
Il precompilatore utilizzato viene fornito <strong>di</strong>rettamente dal Database Management<br />
System (DBMS, ve<strong>di</strong> Appen<strong>di</strong>ce) utilizzato. Perciò per accedere a ogni database si<br />
deve utilizzare il precompilatore appropriato, a causa della gestione a basso livello<br />
delle richieste.<br />
CLI<br />
Figura 6.7. CLI<br />
Oracle<br />
Le chiamate CLI sono specifiche del l<strong>in</strong>guaggio <strong>di</strong> programmazione ospitante e del<br />
DB a cui <strong>in</strong>oltro le richieste, per cui per poter utilizzare più database <strong>di</strong>versi devo<br />
utilizzare più <strong>di</strong> un precompilatore, aggiungendo complicazioni.<br />
Un’alternativa a questa configurazione è utilizzare degli standard che mi permetto<br />
no a scapito <strong>di</strong> una maggiore efficienza <strong>di</strong> poter <strong>in</strong>teragire con DB <strong>di</strong>fferenti. Tra<br />
questi standard troviamo l’ODBC e JDBC.<br />
6.6.1 ODBC e JDBC<br />
Invece <strong>di</strong> utilizzare un’architettura con <strong>di</strong>versi precompilatori per DBMS <strong>di</strong>fferenti,<br />
le librerie ODBC (open database connectivity) permettono <strong>di</strong> accedere a tutti i<br />
database, fornendo al client un’astrazione sull’architettura del particolare DBMS.<br />
In questo modo, il sorgente dalla parte del client viene scritto utilizzando<br />
<strong>di</strong>rettamente le librerie ODBC, evitando così la pre-compilazione.<br />
Ve<strong>di</strong>amo lo schema seguente che ne spiega il funzionamento:<br />
144