Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more. :: Mappa del sito
Tutorials & Scripts, PHP, Linux and more.

Home :: Jsp :: Indice Jsp

Le JSP e i database

Inserito il: 31-08-2005


Come per ogni architettura dinamica per il Web che si rispetti anche le JSP hanno la possibilità di interagire con i database, tramite esse sarà infatti possibile inserire, mostrare, aggiornare ed eliminare i dati presenti in un DB.

La JDBC, acronimo di Java DataBase Connectivity mette a disposizione un' interfaccia in linguaggio Java con la quale eseguire istruzioni SQL; in pratica la JDBC funziona sulla base dell'azione di due driver: JDBC rappresenta il ponte (bridge) essenziale per l'accesso al DB tramite il driver ODBC del server.
Oltre a questo metodo ve ne sono altri due utili per le stesse finalità:
  1. Driver Java: deputato all'interazione col DB senza la mediazione di driver bridge; il Driver Java in pratica traduce i comandi di connettività utilizzando direttamente il protocollo del Database Manager System (ad esempio: MySQL per i database da esso gestiti)
  2. Driver API: sistema che prevede la traduzione dei comandi per la Connectivity in richieste provenienti dal Database Manager.
Nel caso si utilizzi un driver bridge esso dovrà interagire con un'ODBC funzionante all'interno del file system del server; per rendere questo possibile, nei sistemi Windows andiamo su:
Pannello di Controllo
Strumenti di amministrazione
Origine dati ODBC
Quindi selezioniamo il tipo di DB a cui desideriamo connettere le nostre JSP; confermiamo la scelta effettuata con "aggiungi" e scegliamo la tipologia di file del DB selezionato; clicchiamo su fine e terminiamo la nostra istallazione del driver ODBC.

L'interazione tra le JSP e i dati contenuti nei database avviene come nella maggior parte dei linguaggi di scripting server side con alcune particolarità sintattiche proprie di questa architettura.

Innanzitutto avremo la fase di connessione che potrà anche essere assegnata come valore ad una variabile:
connessione = DriverManager.getConnection
("jdbc:mysql://path/db","u","p");
(da scrivere su di una sola riga).

Come si nota dalla stringa proposta, abbiamo assegnato quale valore alla variabile "connessione" il risultato dell'azione svolta dalla funzione DriverManager.getConnection sui seguenti parametri: il driver necessario per la tipologia di DBMS (nel nostro caso MySQL); il percorso al database; la user e la parola chiave necessarie per l'autenticazione dell'utente.

A questo punto entrano in gioco i noti comandi SQL, supponiamo per esempio di voler operare una SELECT sui dati di una determinata tabella "tb" corrispondenti ad un certo parametro; innanzitutto passeremo il parametro "par" alla funzione request.getParameter:
par = 

request.getParameter("par");
Fatto questo potremo avviare la query (osservate come in valori vengono concatenati dall'operatore "+"):
connessione.prepareStatement
("SELECT * FROM tb WHERE dato = '" + par + 

"'");
(da scrivere su di una sola riga).

I risultati dei comandi SQL potranno quindi essere eseguiti passandoli come parametri ad una funzione come sql.executeQuery().

Riportiamo di seguito un semplice esempio di connessione ad un database con inserimento di dati:
<%@ page language="java" import="java.sql.*" %> 


<% 
    int var = 100; 
    int result;  
    Connection connessione = null; 

    

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
    connessione = DriverManager.getConnection
    

("jdbc:odbc:nome_db","usr","pwr"); 

    stat = connessione.createStatement();

    result = 

stat.executeUpdate
    ("INSERT INTO tab (campo) values ("+var+")"));

    connessione.close();
%>
La stringa:
<%@ page language="java" import="java.sql.*" %>
Permette l'importazione del package java.sql.*senza il quale attraverso le JSP non potremo eseguire comandi SQL.

Di seguito vengono assegnati i valori alle variabili e caricata la Class del driver:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Avviene la connessione tra pagina e DB:
connessione = DriverManager.getConnection
("jdbc:odbc:nome_db","usr","pwr");
Viene creato lo Statement, cioè un oggetto utilizzato per l'invio di richieste e comandi al DB:
stat = connessione.createStatement();
Finalmente viene eseguita la query d'inserimento:
result = stat.executeUpdate
("INSERT INTO tab (campo) values ("+var+")"));
(da scrivere su di una sola riga).

Infine viene chiusa la connessione:
connessione.close();
Attenzione: Gli articoli su Tomcat presenti in questa sezione sono stati concessi in esclusiva per la pubblicazione a Mrwebmaster.it; ne è vietata la riproduzione, anche parziale, senza l'esplicito consenso dell'autore e della redazione di Mrwebmaster.it.


Indice Jsp
Apache (19)
CGI (11)
Java (12)
Linux (18)
Manuali (6)
Perl (12)
Php (134)
PostgreSQL (12)
Tomcat (10)
Unix (12)
Libri (0)
Forum



Architettura delle JSP: come funzionano le Java Server Pages
Nel capitolo introduttivo di questa guida, abbiano anticipato alcuni elementi riguardanti le regole generali che stanno alla base del funzionamento... Leggi l'articolo


Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti

Mrwcorsi.it
Mrwebmaster.it
4 You Gratis.it
Ceptive.it
Giochi Gratis
Pierotofy.it
Giornale Webmaster
Manuali
Morpheusweb.it
SEO Directory
Visual designer
Forum per Webmaster




Pagina caricata in 0.0001 secondi. | Per informazioni | ©CG di Claudio Garau P.IVA 03219430927 RSS