Connexion java oracle via un serveur

Description

c'est une application tres riche.j etablie une communication entre une Frame et une base de données via un serveur multi thread que je vous livre le code avec celui de la connexion de la BDD ORACLE
pour que vous puissiez tester il faut que vous creer une FRame et une socket qui se connecte sur le serveur pour pouvoi communiquer Amusez vous bien.
transfert de données du serveur vers le client a travers des socket.

Source / Exemple :


import java.sql.*; // Pour la connexion avec Oracle
 import java.io.*; // Pour les entrée sorties
 import oracle.jdbc.*; // Pour les pilotes Oracle
 import oracle.sql.*; // Pour les spécificités SQL d'Oracle
 //import java.util.jar.*;
 //import java.util.zip.*;
 import java.sql.SQLException;
import oracle.jdbc.driver.*;

/*-------------------------------------------------------------------------------------------

  • ---> Connexion sur ORACLE avec Singleton <----
  • -------------------------------------------------------------------------------------------*/
public class base { /*----------------------------on creer l'instance a NULL --------------------------------------------------*/ private static base myConnexion=null; Connection cnx = null ; Statement stmt = null; ResultSet rs = null; ResultSet resultats ; /*-------------------------------------------------------------------------------------------
  • Constructeur Privé de l'instance
  • -------------------------------------------------------------------------------------------*/
private base(){ try { //chargement de driver Class.forName("oracle.jdbc.driver.OracleDriver"); System.out.println ("driver etablie"); //System.out.println("connexion etablie"); } catch(Exception e) { System.out.println ("erreur:Driver int" + "rouvable"); } try { String URL = "jdbc:oracle:thin:@ùùùùùùùùùùùù:1521:NomBDD"; String USER = '*********"; String PASSWD = "toto"; cnx =DriverManager.getConnection(URL,USER, PASSWD); System.out.println ("connexion base pfe etablie"); } catch(Exception e) { System.out.println ("erreur: base introuvable"); } } /*-------------------------------------------------------------------------------------------
  • On recupere L'instance de la connexion
  • -------------------------------------------------------------------------------------------*/
public static base getConnection(){ if(myConnexion == null){ return myConnexion=new base(); } else{ return myConnexion; } } /*-------------------------------------------------------------------------------------------
  • Requete de selection de BDD <TODO avec parametre>
  • -------------------------------------------------------------------------------------------*/
public void select(){ String requete = "select * from login "; try { Statement stmt = cnx.createStatement(); resultats = stmt.executeQuery(requete); } catch (SQLException e) { System.out.println("Anomalie lors de l'execution de la requête"); } try { // resultats = cnx.executeRequeteAndGetResults(requete); System.out.println("parcours donné requete"); ResultSetMetaData rsmd = resultats.getMetaData(); String [] nom=new String[(rsmd.getColumnCount())]; for(int i=0;i<nom.length;i++){ System.out.println("colonne name === "+rsmd.getColumnName(i+1)); System.out.println("resu == "+(String)resultats.getString("NOM")); String mesColonne=resultats.getString(rsmd.getColumnName(i+1)); nom[i]=mesColonne; } for(int i=0;i<nom.length;i++) { System.out.println("--- "+nom[i]);} /* int nbCols = rsmd.getColumnCount(); // System.out.println("resultat "+resultats); boolean encore = true;//resultats.next(); while (encore) { System.out.println("eee"); for (int i = 0; i <= nbCols; i++){ System.out.println("eee"); System.out.print(rsmd.toString()+ " --- "); } System.out.println("eee"); encore = resultats.next(); } resultats.close();
  • /
} catch (SQLException e) { System.out.println("sa foire o niveau des données"); } } /*-------------------------------------------------------------------------------------------
  • Verifier Login && Pass quand le client se connecte
  • -------------------------------------------------------------------------------------------*/
public String verifierLoginPassword(String login, String password){ String etatDemandeLoggin = "erreur"; int idActeur = 0; int idDroit = 0; try{ //etablissement de la connection cnx = getConnection().cnx; stmt = cnx.createStatement(); rs = stmt.executeQuery("SELECT * FROM login where (login='"+login+"' and password='"+password+"');"); while(rs.next()){ idActeur = rs.getInt(1); //profession = rs.getInt(7); } if(idActeur != 0){ rs = stmt.executeQuery("SELECT idDroit FROM associer where (idActeur='"+idActeur+"');"); while(rs.next()){ idDroit = rs.getInt(1); } if(idDroit == 1){ etatDemandeLoggin = "administrateur"; } else if(idDroit !=0 && idDroit != 1){ etatDemandeLoggin = "autre"; } } else{ etatDemandeLoggin = "erreur"; } } catch (SQLException e) { System.out.println("SQLException: " + e); } finally{ try{ stmt.close(); cnx.close(); } catch (SQLException e){ e.printStackTrace(); } } return etatDemandeLoggin; } /*-------------------------------------------------------------------------------------------
  • Ajouter Client qui termine son Inscription
  • -------------------------------------------------------------------------------------------*/
public boolean ajouterActeur(String login, String password, String nom, String prenom, String adresse, int tel, int droit) { // TODO Auto-generated method stub boolean estAjoute = false; int maxIdActeur = 0; int numActeur = 0; try{ //etablissement de la connection cnx = getConnection().cnx; stmt = cnx.createStatement(); rs = stmt.executeQuery("SELECT max(idActeur) FROM acteur;"); while(rs.next()){ maxIdActeur = rs.getInt(1); } numActeur = maxIdActeur + 1; stmt.executeUpdate("INSERT INTO `acteur` (`idActeur`, `login`, `password`, `nom`, `prenom`, `adresse`, `tel`) VALUES ("+numActeur+", '"+login+"', '"+password+"', '"+nom+"', '"+prenom+"', '"+adresse+"', "+tel+");"); stmt.executeUpdate("INSERT INTO `associer` (`idActeur`, `idDroit`) VALUES ("+numActeur+", "+droit+");"); estAjoute = true; } catch (SQLException e) { System.out.println("SQLException: " + e); estAjoute = false; } finally{ try{ stmt.close(); cnx.close(); } catch (SQLException e){ e.printStackTrace(); } } // TODO Auto-generated method stub return estAjoute; } /*-------------------------------------------------------------------------------------------
  • -------------------------------------------------------------------------------------------*/
}

Conclusion :


transfert de données du serveur vers le client a travers des socket.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.