APPLICATION CLIENT SERVEUR DE DESSIN EN RÉSEAUX

Signaler
Messages postés
65
Date d'inscription
dimanche 28 septembre 2003
Statut
Membre
Dernière intervention
28 juillet 2005
-
Chesfil
Messages postés
10
Date d'inscription
mercredi 25 février 2009
Statut
Membre
Dernière intervention
8 octobre 2009
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/22673-application-client-serveur-de-dessin-en-reseaux

Chesfil
Messages postés
10
Date d'inscription
mercredi 25 février 2009
Statut
Membre
Dernière intervention
8 octobre 2009

exécutes une fois "NetDrawServerMain.class" dans ton serveur, et au moins deux fois "NetDrawClientMain.class" pour avoir deux clients qui peuvent communiquer.
Chesfil
Messages postés
10
Date d'inscription
mercredi 25 février 2009
Statut
Membre
Dernière intervention
8 octobre 2009

exécutes une fois "NetDrawServerMain.class" dans ton serveur, et au moins deux fois "NetDrawClientMain.class" pour avoir deux clients qui peuvent communiquer.
ramroum123
Messages postés
1
Date d'inscription
lundi 27 octobre 2008
Statut
Membre
Dernière intervention
2 avril 2009

par quel programme je doit exécuté ce programme!!!!
ballou129
Messages postés
3
Date d'inscription
vendredi 4 septembre 2009
Statut
Membre
Dernière intervention
4 septembre 2009

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;
}


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

}
sman0
Messages postés
39
Date d'inscription
mercredi 19 novembre 2003
Statut
Membre
Dernière intervention
3 novembre 2005

Intéret ? code source ?
pas de code source = pas d'interet, c'est beau ça marche mais ça n'apporte rien à personne.
plutot bizarre que le contenu soit en anglais d'ailleurs, ça sent le pompé à plein nez.
cs_mzamoun
Messages postés
10
Date d'inscription
mercredi 3 septembre 2003
Statut
Membre
Dernière intervention
6 février 2006

De meme, EXELENTE Appli qui donne une image serieuse a java dans ce monde competitif !!

concernant l'arret du serveur, je pense qu'il ya au moins une solution:
solution brutale: si on demarre le serveur a partir d'un console, faire un CTRL+C

pour l'autre, il faut bosser un peu plus !

c'est a nous de le faire ;)
izt00g00d
Messages postés
65
Date d'inscription
dimanche 28 septembre 2003
Statut
Membre
Dernière intervention
28 juillet 2005

E-X-L-ente ton appli..
sauf que...
comment on arrête le serveur ?
c'est dommage qu'un nouveau client se connectant ne récupère pas le dessin en cours...