Connexion java oracle via un serveur

Soyez le premier à donner votre avis sur cette source.

Vue 19 868 fois - Téléchargée 3 321 fois

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

Ajouter un commentaire

Commentaires

ingenieur2011
Messages postés
1
Date d'inscription
lundi 4 avril 2011
Statut
Membre
Dernière intervention
6 avril 2011

bonjour

j'ai le code source suivant en jsp qui me permet de vérifier si un utilisateur est inscrit deja dans mon systeme, comment faire pour afficher un message d'erreur lorque le login n'existe pas dans la table oracle? merci pour votre aide.
<%
//chargement de pilote
Class.forName("oracle.jdbc.driver.OracleDriver" );
String url = "jdbc:oracle:thin:@--------------:1521:nom_base";
Connection con = DriverManager.getConnection(url,"TEST","TEST" );
try{
out.println ("1");
Statement s = con.createStatement();
s.executeQuery(("select nom_user, password from utilisateur where nom_user='"+request.getParameter("login")+"' AND password='"+request.getParameter("motdepasse")+"'"));

out.println("login existant");

}

catch (SQLException e) {
e.printStackTrace();
}

%>
oussamaboujlel
Messages postés
2
Date d'inscription
samedi 10 avril 2010
Statut
Membre
Dernière intervention
21 avril 2010

merci b1 b1 b1,je suis bloqué dans mon pfa et maintenant sa marche;je vous merci beaucoup MouMou95
cs_anous06
Messages postés
2
Date d'inscription
dimanche 27 août 2006
Statut
Membre
Dernière intervention
12 juillet 2009

Même si ,là je suis en retard , mais le code m'aide beaucoup !!
merci bien.
duolimihc
Messages postés
4
Date d'inscription
mardi 3 juin 2008
Statut
Membre
Dernière intervention
19 septembre 2010

Merci pure ce cs
merdasso
Messages postés
1
Date d'inscription
jeudi 25 décembre 2008
Statut
Membre
Dernière intervention
25 décembre 2008

VRAIMMENT ,merci beaucoup pour ce code car il est bien organisé.

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.