Java technologie
Java – MySQL
java-mysql
Java – MySQL
Code: java-mysql
Originaux
url: http://tecfa.unige.ch/guides/tie/html/java-mysql/java-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/java-mysql.pdf
Auteurs et version
• Daniel K. Schneider- Vivian Synteta • Version: 1.0 (modifié le 25/1/01)
Prérequis
Module technique précédent: mysql-intro Module technique précédent: java-introModule technique précédent: java-jhtml ou java-jsp (pour une partie) Module technique précédent: java-swing (pour une partie)
Internet et Education
© TECFA 25/1/01
Java – MySQL – .
java-mysql-2
Modules
Module technique suivant: ….
Objectifs
• Java – MySQL basics 🙂
Internet et Education
© TECFA 25/1/01
Java – MySQL – 1. Introduction au JDBC
java-mysql-3
1.Introduction au JDBC
Principe de base: • Interface Java – bases de données SQL: JDBC = Java Data Base Connection • Le langage Java définit une interface (commune) • Chaque vendeur doit fournir une implémentation • certaines sont fournis avec le Java core • certaines (comme MM pour MySQL doivent être importées) Quatre types d’interfaces 1. JDBC-ODBC bridge plus ODBC driver • nécessite uneinstallation spéciale (driver du côté client par exemple) 2. Native-API partly-Java driver • se connecte dans une API client 3. JDBC-Net pure Java driver • utilise un middleware (serveur WWW – DB) 4. Native-protocol pure Java driver (on va utiliser ce type) • connexion directe Java-DB via le réseau, driver MySQL par exemple
Internet et Education © TECFA 25/1/01
Java – MySQL – 1. Introduction au JDBCjava-mysql-4
Classes Java et outils utilisés dans ce module Driver MySQL url: mm.mysql Driver: http://www.worldserver.com/mm.mysql/
tecfa2: /local/java/classes/mm-jdbc/mysql.jar
Classes Swing (Swing ou le Netscape/Java plugin: url: http://java.sun.com/products/jfc/index.html Classes Servlet: url: servlet SDK: http://java.sun.com/products/servlet/index.html
tecfa2:/local/java/JSDK2.0/lib/jsdk.jar
Copies dans http://tecfa.unige.ch/guides/java/classes/ • on y met une copie de la plupart des classes utilisées
Internet et Education
© TECFA 25/1/01
Java – MySQL – 1. Introduction au JDBC
java-mysql-5
1.1 Les interfaces API de base
Il existe une implémentation pour la plupart des bases de données • on les appelle des « driver ». • Souvent, il faut trouver driver qq partet mettre son *.jar dans le classpath JDBC API documentation:
http://tecfa2.unige.ch/guides/java/jdk1.1/docs/api/Package-java.sql.html
MM MySQL Driver documentation:
http://tecfa2.unige.ch/guides/mysql/local/mm-jdbc/doc/apidoc/
A. java.sql.DriverManager
• Gère les drivers JDBC • on peut indiquer un Driver, qui existe: • soit avec la system property jdbc.drivers (Oracle par exemple) • soitavec des classes importées (comme dans notre cas) • Bout de code:
try { Class.forName(« org.gjt.mm.mysql.Driver »); } catch(Exception ex) { … return; }
Internet et Education
© TECFA 25/1/01
Java – MySQL – 1. Introduction au JDBC
java-mysql-6
B. java.sql.Connection
• établir une connexion avec la base de données • permet d’obtenir de la méta-information sur les tables (et autres)• Bout de code:
String url = « jdbc:mysql://tecfa2.unige.ch:3306/COFFEEBREAK »; String user = « nobody »; String password = null; Connection con = DriverManager.getConnection(url, user, password);
• Attention: (étudiants STAF) url = « jdbc:mysql://localhost:3306/deiaco »;
C. java. sql.Statement
• permet d’envoyer un statement SQL vers la base de données • le résultat de la requête va seretrouver dans un ResultSet • Bout de code:
String queryString = « select COF_NAME, PRICE from COFFEES »; Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery(queryString);
Internet et Education
© TECFA 25/1/01
Java – MySQL – 1. Introduction au JDBC
java-mysql-7
D. java.sql.Resultset
• Le Resultset (résultat d’une requête) est un objet spécial • On y accède ligne par…