I cookie permettono il funzionamento di alcuni servizi di questo blog. Utilizzando questi servizi, accetti l'utilizzo dei cookie da parte nostra. Ok Rifiuta

Connessione a un database in JAVA

Una delle operazioni più frequenti che si fanno quando si scrive un'applicazione web in JAVA è effettuare una connessione a un database. Per effettuare l'accesso al database dobbiamo avere sul sistema il package JDBC, una libreria in cui all'interno ci sono tutte le dichiarazioni delle classi per effettuare la connessione. Si differenzia dal PHP perché il JDBC offre delle API generiche in modo da astrarsi dallo specifico database. (Mentre in PHP ci sono funzioni specifiche per ogni tipo di database) Il prerequisito fondamentale inoltre è anche il driver JDBC, il MysqlConnector, scaricabile da questo link. Il Connector è usato per trasformare le chiamate alle API in istruzioni per ogni specifico DBMS. Una volta scaricato, se lavoriamo con NetBeans (il mio preferito) basta aggiungerlo alla cartella Libraries.

Fatto questo possiamo iniziare a realizzare la connessione nella nostra Servlet JAVA. Innanzitutto dobbiamo includere dinamicamente nel programma il Connector e inizializzare la connessione scrivendo:

 

Class.forName("com.mysql.jdbc.Driver");

Connection c = DriverManager.getConnection("jdbc:mysql://localhost/testdb","username","password"); // qui passiamo il nome, la user e pass del database

 

Fatto questo siamo connessi al nostro database mysql, per effettuare la query con i risultati useremo gli oggetti Statement, per preparare la query e ResultSet per prendere i risultati dal database:

 

Statement s = c.createStatement(); // creiamo lo statement nell'oggetto c di tipo Connection

ResultSet rs = s.executeQuery("SELECT * FROM utenti");

s.close();

 

Qui bisogna fare una nota molto importante: per eseguire query di selezione si usa la funzione executeQuery(), per eseguire query di modifica, inserimento, creazione e cancellazione si usa executeUpdate().

Per gestire i risultati quindi possiamo usare questo codice (dipende da cosa vi serve):

 

while(rs.next()){

   String nome = rs.getString("nome"); //dove nome è un campo del database della tabella utenti

   ......

}

rs.close();

 

Il codice che vi ho fornito è un esempio molto elementare, andrebbe gestito con delle eccezioni JAVA try e catch (vi aiuterà NetBeans in questa impresa) ma costituisce un'ottima base di partenza.

I più letti

Seguici su Facebook

Seguici su Google+

Renzo Cappelli

miafoto

Sono un appassionato di informatica, mi dedico allo sviluppo web e alla gestione dei sistemi web-based: realizzo siti e progetto software gestionale per privati e aziende. Ho tanta passione per tutto quello che riguarda il web e le nuove tecnologie, lavoro bene in team e collaboro con aziende e professionisti di settore.

Commenti

NON CI SONO ANCORA COMMENTI.

Lascia il tuo commento