DB prete (ajout fonctions potentielle dans futur proche)
This commit is contained in:
parent
ad27139ee2
commit
dd08bd4fb2
3 changed files with 94 additions and 37 deletions
|
@ -199,8 +199,9 @@ public class ChatApp {
|
|||
}
|
||||
|
||||
public static void main (String[] args) throws IOException {
|
||||
System.out.println("Creation DB");
|
||||
DataBase Db = DataBase.getInstance();
|
||||
ChatApp app = new ChatApp(args[0],Integer.parseInt(args[1])) ;
|
||||
/*ChatApp app = new ChatApp(args[0],Integer.parseInt(args[1])) ;
|
||||
ExecutorService execUDP = Executors.newFixedThreadPool(1000);
|
||||
execUDP.submit(new RunnerEcouteUDP(app));
|
||||
try {
|
||||
|
@ -220,7 +221,7 @@ public class ChatApp {
|
|||
app.getHist("Doudou").afficher10derniers();
|
||||
System.out.println("Tentative de connexion avec Doudou");
|
||||
TCPEchange.demarrerSession(app, app.actifUsers.getPseudoList("Doudou"));
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
|
||||
|
|
Binary file not shown.
|
@ -33,18 +33,18 @@ public class DataBase {
|
|||
private static DataBase instance = null; // Singleton
|
||||
|
||||
public DataBase() {
|
||||
/*try {
|
||||
try {
|
||||
// Besoin d'installer le driver JDBC entre java IDE et le system DBMS pour faire un pont entre les deux
|
||||
Class.forName("com.mysql.jdbc.Driver");
|
||||
Class.forName("com.mysql.cj.jdbc.Driver");
|
||||
System.out.println("Driver Installe");
|
||||
} catch (ClassNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println("Echec installation Driver");
|
||||
}*/
|
||||
}
|
||||
|
||||
try {
|
||||
// Etablir une connexion , forme : (url, "myLogin", "myPassword");
|
||||
this.connection = DriverManager.getConnection("jdbc:mysql://localhost:8889/Utilisateurs?useSSL=false", "root", "Tppoo2020");
|
||||
this.connection = DriverManager.getConnection("jdbc:mysql://localhost:8889/POO_AL_NM?allowPublicKeyRetrieval=true&useSSL=false", "root", "root");
|
||||
//this.connection = DriverManager.getConnection(this.DBurl,login,pswd);
|
||||
System.out.println("Connexion Etablie");
|
||||
} catch (SQLException e) {
|
||||
|
@ -82,12 +82,12 @@ public class DataBase {
|
|||
grand = ID1 ;
|
||||
}
|
||||
String nomTable = "Chat_" + petit + "_" + grand ;
|
||||
String Requete = "CREATE TABLE IF NOT EXISTS " + nomTable + "( Destinataire VARCHAR, Source VARCHAR, Message , Date d'envoi)" ;
|
||||
|
||||
Statement stmt = null ;
|
||||
String Requete = "CREATE TABLE IF NOT EXISTS`" + nomTable +"` (\n" + "`Destinataire` varchar(100) NOT NULL,\n" + " `Source` varchar(100) NOT NULL,\n" + " `Envoi` timestamp NOT NULL,\n" + " `Message` text NOT NULL\n" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ;";
|
||||
System.out.println(Requete);
|
||||
PreparedStatement Ps = null ;
|
||||
//Statement est utilisé pour envoyer une requete SQL à la base de donnee
|
||||
try {
|
||||
stmt= connection.createStatement();
|
||||
Ps = connection.prepareStatement(Requete);
|
||||
System.out.println("Statement cree");
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
|
@ -96,32 +96,34 @@ public class DataBase {
|
|||
|
||||
//Execute la donnée SQL statement passe en parametre
|
||||
try {
|
||||
stmt.executeUpdate(Requete);
|
||||
Ps.executeUpdate();
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println(" Echec executeUpdate ");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Methode permettant de mettre a jour le pseudo d'un utilisateur en fonction de son ID dans la base de donnee
|
||||
* @param ID Id de l'utilisateur qui vient de changer de pseudo
|
||||
* @param Pseudo Nouveau Pseudo de l'utilisateur
|
||||
*/
|
||||
public void majPseudo( String ID , String Pseudo) {
|
||||
String requete = "UPDATE Utilisateurs SET Pseudo = '"+Pseudo+"’ WHERE ID = '"+ID+"'";
|
||||
Statement stmt = null ;
|
||||
String requete= "UPDATE `Utilisateurs` SET `Pseudo`=? WHERE id=?";
|
||||
PreparedStatement Ps = null ;
|
||||
//Statement est utilisé pour envoyer une requete SQL à la base de donnee
|
||||
try {
|
||||
stmt= connection.createStatement();
|
||||
Ps = connection.prepareStatement(requete);
|
||||
Ps.setString(1, Pseudo);
|
||||
Ps.setString(2, ID);
|
||||
System.out.println("Statement cree");
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println("Echec creation Statement");
|
||||
}
|
||||
}
|
||||
//Execute la donnée SQL statement passe en parametre
|
||||
try {
|
||||
stmt.executeUpdate(requete);
|
||||
Ps.executeUpdate();
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println(" Echec executeUpdate ");
|
||||
|
@ -135,10 +137,41 @@ public class DataBase {
|
|||
* @param IDdest Id de l'utilisateur Destinataire du message
|
||||
* @param IDdest Id de celui qui envoi le message
|
||||
* @param Msg Message envoye entre les deux utilisateurs
|
||||
* @param date Date de l'envoi du message
|
||||
*/
|
||||
public void ajoutHistorique(String IDdest , String IDsrc, String Msg, Date date) {
|
||||
// A REMPLIR
|
||||
public void ajoutHistorique(String IDdest , String IDsrc, String Msg) {
|
||||
String petit;
|
||||
String grand;
|
||||
int comparaison = IDdest.compareTo(IDsrc);
|
||||
if (comparaison < 0) {
|
||||
petit = IDdest;
|
||||
grand = IDsrc ;
|
||||
}
|
||||
else {
|
||||
petit = IDsrc;
|
||||
grand = IDdest ;
|
||||
}
|
||||
String nomTable = "Chat_" + petit + "_" + grand ;
|
||||
String requete= "INSERT INTO `"+ nomTable +"`(`Destinataire`, `Source`, `Message`) VALUES ( ? , ? , ?)";
|
||||
PreparedStatement Ps = null ;
|
||||
//Statement est utilisé pour envoyer une requete SQL à la base de donnee
|
||||
try {
|
||||
Ps = connection.prepareStatement(requete);
|
||||
Ps.setString(1, IDdest);
|
||||
Ps.setString(2, IDsrc);
|
||||
Ps.setString(3, Msg);
|
||||
System.out.println("Statement cree");
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println("Echec creation Statement");
|
||||
}
|
||||
|
||||
//Execute la donnée SQL statement passe en parametre
|
||||
try {
|
||||
Ps.executeUpdate();
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println(" Echec executeUpdate ");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -148,12 +181,26 @@ public class DataBase {
|
|||
* @param Pseudo pseudo actuelle de l'utilisateur
|
||||
*/
|
||||
public void ajoutUtilisateurs(String ID , String Pseudo ) {
|
||||
// A REMPLIR
|
||||
Date date = new Date();
|
||||
String dateString = date.toString();
|
||||
String BooleanActif = "true";
|
||||
String requete= "INSERT INTO Utilisateurs`(`ID`, `Pseudo`, `Actif`, `Inscription`) VALUES ('valeur 1', 'valeur 2', ...)";
|
||||
|
||||
String requete= "INSERT INTO `Utilisateurs` (`ID`, `Pseudo`, `Actif`) VALUES ( ? , ? , '1')";
|
||||
PreparedStatement Ps = null ;
|
||||
//Statement est utilisé pour envoyer une requete SQL à la base de donnee
|
||||
try {
|
||||
Ps = connection.prepareStatement(requete);
|
||||
Ps.setString(1, ID);
|
||||
Ps.setString(2, Pseudo);
|
||||
System.out.println("Statement cree");
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println("Echec creation Statement");
|
||||
}
|
||||
|
||||
//Execute la donnée SQL statement passe en parametre
|
||||
try {
|
||||
Ps.executeUpdate();
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println(" Echec executeUpdate ");
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -162,17 +209,26 @@ public class DataBase {
|
|||
* @param connecte Boolean true si il est connecte , false sinon
|
||||
*/
|
||||
public void majUtilisateursActifs(Boolean Connecte, String Id) {
|
||||
// A REMPLIR
|
||||
String requete= "UPDATE `Utilisateurs` SET `Actif`=? WHERE id=?";
|
||||
PreparedStatement Ps = null ;
|
||||
Integer Actif = Connecte ? 1 : 0;
|
||||
//Statement est utilisé pour envoyer une requete SQL à la base de donnee
|
||||
try {
|
||||
Ps = connection.prepareStatement(requete);
|
||||
Ps.setInt(1, Actif);
|
||||
Ps.setString(2, Id);
|
||||
System.out.println("Statement cree");
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println("Echec creation Statement");
|
||||
}
|
||||
//Execute la donnée SQL statement passe en parametre
|
||||
try {
|
||||
Ps.executeUpdate();
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println(" Echec executeUpdate ");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/*public static void main (String[] args) throws IOException {
|
||||
DataBase DB = DataBase.getInstance();
|
||||
DB.CreationTableHistorique("Auriane", "Nabil");
|
||||
}*/
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue