Introduction Nous allons donc nous connecter, dans notre exemple, à une base dedonnée de type Free, mais il est important de garder à l'esprit que çamarche avec tous les types de base mysql en ligne.
Dans notre exemple, nous imaginons que nous sommes l'administrateur d'un site ayant les caractéristique suivantes :
* FAI : Free
* Nom du site : monSite.free.fr
* Serveur SQL : sql.free.fr
* Nom d'utilisateur (SQL et FTP) : userFree
* Mot de passe (SQL FTP) : mdpFree
Maintenant que tout cela est clair, nous allons :
1. Télécharger le driver DbwConnection
2. Uploader le fichier serveur sur la racine du site
3. Nous connecter à cette base de donnée
4. Executer et afficher le résultat d'une requête.
5. Récapitulatif du code
6. Conclusion
1. Télécharger le driver DbwConnectionVous pouvez le trouver à cette adresse :
https://sourceforge.net/projects/dbwconnection
Cliquez sur "Download DbwConnection", puis sélectionnez la dernière version (la 0.9.2 actuellement).
Vous obtenez donc une archive Zip, qu'il vous faut décompresser.
Un nouvez dossier vas se créer et contiendra au moins les fichiers suivants :
Dbw.jar ---> Le driver servant à se connecter à la base.
dbw.php ---> La partie serveur du programme.
2. Uploader le fichier serveur sur la racine du siteVous l'aurez compris c'est facile, vous prenez le fichier dbw.php et vous l'uploader par exemple à la racine du serveur.
Dans notre exemple il se trouvera donc à cet emplacement :
http://monSite.free.fr/dbw.php
3. Nous connecter à cette base de donnéeIl vas donc faloir créer un nouveau projet Java, et ajouter le fichier"Dbw.jar" au classpath, c'est à dire aux librairy de ce projet.
Si vous ne savez pas faire sous Netbeans, et comme ce n'est pas l'objetde ce tutoriel, voici un lien qui vous expliquera comment faire :
http://dbwconnection.wiki.sourceforge.net/tuto_install_driverDans le code, nous allons donc commencer par importer le pacquage requis, pour cela il faudra indiquer :
import dbwConnection.*;
Pour créer la connexion, il faut instancier l'objet DbwConnection, avec les paramètre spécifique à votre site :
DbwConnection conn = new DbwConnection(location, username, pwd, host, dataBase);
Ce qui donne dans notre cas :
DbwConnection conn = new DbwConnection("http://monSite.free.fr/dbw.php", "userFree", "mdpFree", "sql.free.fr", "monSite");
4. Executer et afficher le résultat d'une requête.La connexion est maintenant créée, vous pouvez exécuter des requêtesavec la méthode conn.executeQuery(String query), ou encore la methodeconn.executeUpdate(String upadate).
Dans cet exemple, nous exécutons une requête, et nous affichons à l'écran les deux premières colonnes :
DbwConnection conn = new DbwConnection(location, username, pwd, host, dataBase);
ResultSet rs = conn.executeQuery("SELECT * FROM `categories`");
while (rs.next()) {
System.out.print(rs.getString(1));
System.out.print(rs.getString(2));
}
5. Récapitulatif du codeAu final, notre code se compose comme cela :
// On importe le driver
import dbwConnection.*;
public class Main {
public static void main(String[] args) {
// location = la ou se trove le fichier dbw.php sur votre serveur
String location = "http://monSite.free.fr/dbw.php";
// username = votre nom d'utilisateur pour vous connecter a votre base SQL
String username = "userFree";
// pwd = votre mot de passe pour vous connecter a votre base SQL
String pwd = "mdpFree";
// host = l'adresse de votre serveur SQL
String host = "sql.free.fr";
// dataBase = le nom de votre base de donnee SQL.
String dataBase = "monSite";
// impératif de mettre des try/catch, pour capturer les exceptions
try {
DbwConnection conn = new DbwConnection(location, username, pwd, host, dataBase);
ResultSet rs = conn.executeQuery("SELECT * FROM `categories`");
while (rs.next()) {
System.out.print(rs.getString(1));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
6. ConclusionIl est donc maintenant possible de se connecter, depuis un programme Java, à n'importe quel base mysql d'un site en ligne.
Pour toutes questions/critiques/suggestions, vous pouvez me contacter par mp, ou laisser un message sur sur tutoriel.