Comment bien déclarer sa connexion
Bonjour,
J'ai un problème car je voudrais savoir si il faut déclarer sa connexion sur chaque page ou faire un scope session enfin je ne sais pas trop quel démarche adopté pour une connexion efficace et fiable.
Code:
1 2 3 4 5 6 7 8 9 10 11
| <%try { // tenter de récupérer le driver Mysql
Class.forName("com.mysql.jdbc.Driver").newInstance();
System.out.println("Chargement du pilote Mysql réussi"); }catch(Exception e) {
System.err.print("Erreur de chargement du pilote : "); System.err.println(e.getMessage());}%>
<% String url = "jdbc:mysql://localhost:50083/mabase";
try{//tenter de se connecter a ma base
java.sql.Connection cnx=java.sql.DriverManager.getConnection("jdbc:mysql://localhost:50083/mabase","root","");
System.out.println("Connecté à mabase"); }catch(Exception e) {
System.err.print("Erreur de chargement de la base : "); System.err.println(e.getMessage());}
%> |
Une autre question dans un bean j'ai crée une méthode pour insérer un client dans la BD mais quand dans ma page je tape le code ci dessous il m'apparait une erreur "cnx cannot be resolved to a variable"
Code:
1 2 3
| Client ClientCourant =new Client(clientDefinition);
session.setAttribute("Client", ClientCourant);
ClientCourant.insertBase(cnx); |
La methode insertBase:
Code:
1 2 3 4 5 6 7
| public void insertBase(Connection cnx) throws SQLException{
java.sql.Statement req= cnx.createStatement();
String requete="INSERT INTO Client VALUES('";
StringBuilder sb = new StringBuilder(requete);
sb.append(this.mail+"','");sb.append(this.nom+"','");sb.append(this.prenom+"','");sb.append(this.age+"','");sb.append(this.sexe+"','");sb.append(this.pays+"','");sb.append(this.ville+"','");sb.append(this.adresse+"','");sb.append(this.codePostal+"','");sb.append(this.motDePasse+"'\"");
req.executeUpdate(sb.toString());
req.close();} |
Merci d'avance pour votre aide