JDBC - uOttawa

publicité
CSI 2532 Lab5
Installation de JDBC
Février 13, 2012
1
Sommaire
• Qu'est-ce que JDBC ?
• Le contrôleur JDBC pour PostgreSQL
• La programmation Java avec JDBC
• Les requêtes SQL avec JDBC
Qu'est-ce que JDBC?
• JDBC est une API (Application Programming
Interface) java disponible depuis la version 1.1
du JDK.
• Java DataBase Connectivity.
• Cette API est constituée d'un ensemble
d'interfaces et de classes qui permettent
l'accès, à partir de programmes java, à des
données tabulaires.
Qu'est-ce que JDBC?
L'API JDBC permet, entre autres
 L'établissement d'une connexion avec le SGBD
 L'envoi de requêtes SQL au SGBD, à partir du
programme java
 Le traitement, au niveau du programme, des
données retournées par le SGBD
 Le traitement des méta-données de la
connexion, de l'instruction ou des résultats
 Le traitement des erreurs retournées par le
SGBD lors de l'exécution d'une instruction
PostgreSQL JDBC driver
• Site Web:
 http://jdbc.postgresql.org
• Documents:
 http://jdbc.postgresql.org/documentation/hea
d/index.html
• Download the JDBC Driver
 http://jdbc.postgresql.org/download.html
 Version: 9.1-901 JDBC 4
 postgresql-9.1-901.jdbc4
Programmation Java - Préparation
• Préparez le serveur:
CREATE TABLE artist
(
aname VARCHAR(20),
birthplace VARCHAR(20),
style VARCHAR(20),
dateofbirth DATE,
PRIMARY KEY (aname));
INSERT INTO artist VALUES ('Caravaggio','Milan','Baroque','1571-09-28');
INSERT INTO artist VALUES ('Smith', 'Ottawa', 'Modern', '1977-12-12');
INSERT INTO artist VALUES ('Picasso','Malaga','Cubism','1881-10-25');
JDBC en Java
1. Importez le contrôleur JDBC
•
import java.sql.*;
2. Charger le contrôleur JDBC
3. Connectez-vous à la Base de données
4. Exécutez une requête et affichez les résultats
Exemple: MyJDBCEx.java
JDBC en Java
1. Importez le contrôleur JDBC
2. Charger le contrôleur JDBC
• Class.forName("org.postgresql.Dr
iver");
•
or externally
•
•
java -Djdbc.drivers=org.postgresql.Driver
MyJavaProgram
or set CLASSPATH
3. Connectez-vous à la Base de données
4. Exécutez une requête et affichez les résultats
JDBC en Java
1. Importez le contrôleur JDBC
2. Charger le contrôleur JDBC
3. Connectez-vous à la Base de données
•
Connection conn =
DriverManager.getConnection(url,
username, password);
•
URL:
•
•
jdbc:postgresql://host:port/database
jdbc:postgresql://web0.site.uottawa.ca:15432/yo
ur_database_name
4. Exécutez une requête et affichez les résultats
JDBC en Java
1. Importez le contrôleur JDBC
2. Charger le contrôleur JDBC
3. Connectez-vous à la Base de données
4. Exécutez une requête et affichez les résultats
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("SELECT * FROM
artists);
while (rs.next()) {
……
}
rs.close();
st.close();
Compile and Run
• Setup Java environment
 PATH
Set your own JDK or
JRE path
• set PATH=%PATH%;E:\dev\jdk\bin;
• So we can use java.exe, javac.exe in command
line
 CLASSPATH
• set CLASSPATH=d:\postgresql-8.3604.jdbc4.jar;
• Commandes:
 javac MyJDBCEx.java
 java MyJDBCEx
Set your own path of
the jdbc driver
Requêtes (suite)
• PreparedStatement
PreparedStatement st =
conn.prepareStatement("SELECT * FROM artist
WHERE aname = ?");
st.setString(1, foovalue);
ResultSet rs = st.executeQuery();
• Execute Updates
PreparedStatement st =
conn.prepareStatement("DELETE FROM artist
WHERE aname = ?");
st.setString(1, foovalue);
int numOfRowsDeleted = st.executeUpdate();
À vous!
• Écrivez un programme Java et:
 Connectez vous à votre propre DB
 Retourner le nom et la date de naissance de
tous les artistes et
 Affichez le résultat à l’écran dans une table à 2D
avec System.out.print()
REFERENCE
• PostgreSQL JDBC Doc:
 http://jdbc.postgresql.org/documentation/83/inde
x.html
 Chapters:
• 3. Initializing the Driver
• 5. Issuing a Query and Processing the Result
• JDBC Tutorials at sun.com
 JDBC Introduction (a short introduction)
 JDBC Basics (with many examples)
 JDBC Overview (architecture of JDBC)
Téléchargement