IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Projet PPE BTS SIO CLIENT LOURD JAVA


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 13
    Par défaut Projet PPE BTS SIO CLIENT LOURD JAVA
    Bonjour/Bonsoir à tous !
    Alors voilà j'ai un gros problème et j'espère que vous pourrez m'aider.
    Je dois préparer un client lourd en Java pour un projet PPE que je dois présenter à mon BTS et l'utilisation d'un client lourd est obligatoire pour le passer ( mon professeur m'a forcé la main pour créer le code moi même et j'ai fais l'erreur d'accepter... )
    Je suis un gros débutant dans se langage et c'est pour ça que j'ai décidé de me mettre sur débutant même si le code que vous allez voir est plus poussé ! Mais je vais vous expliquer.
    Si j'ai mal fais je m'en excuse d'avance.
    En fait le projet que j'ai décidé de mener est un tableau de taxation qui va répertorier tous les appels d'un serveur téléphonique sous la forme d'un tableau Jtable en ce connectant à la base de donnée ( la dessus pas de problème, le client lourd ce connecte niquel) mais le problème c'est que mon tableau ne récupère que le premier champ de la base de donnée et n'affiche pas les autres !
    Le problème c'est que mon professeur a décidé de m'aider et a fait énormément de trucs dessus avant de me dire qu'il a fait trop de tests et que je dois tout recommencer....
    Il a fait pleins de trucs sur mon code sans le commenter et je n'ai aucunes idée de ce qu'il a fait parce que ce n'est pratiquement pas commenté et je comprend rien il m'a parlé de seter/geter et je ne sais même pas ce que c'est et j'ai franchement pas envie de recommencer et ça me fais pas mal stresser parce que je passe mon orale dans 1 mois...
    Je sais que de me cracher le code sera inutile pour mon apprentissage mais si on pouvait m’aiguiller ce qui ne sert à rien et que je peux nettoyer dans mon code et m'expliquer où est-ce qu'il faut que je cherche serait vraiment un plus pour que je puisse trouver une solution et se serait vraiment sympas de votre part

    Vous allez surement vous dire si tu ne comprend rien comment tu as fait pour faire une partie tout seul ? Ben c'est pas bien mais c'est surtout du copié/collé sur internet et quand ça marche tant mieux quoi .. mais je savais pas trop ce que je faisais..
    Je sais que j'aurais dû m'y prendre plus tôt mais ça fait plus d'un an que je me concentre sur mon infrastructure que je l'ai un peu trop mis de côté...
    Je vous met mon code ( ça va surement faire mal aux yeux mais bon j'ai plus rien à perdre xD )

    Statistiques.java :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.ArrayList;
     
    import javax.swing.JFrame;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
     
    public class Statistiques extends JFrame {
     
     
     
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
     
    		//tableau conteant les objets CALL
    		ArrayList<Call> calls=new ArrayList<Call>();
    		System.out.println("-------- PostgreSQL "
    				+ "JDBC Connection Testing ------------");
     
    		try {
     
    			Class.forName("org.postgresql.Driver");
     
    		} catch (ClassNotFoundException e) {
     
    			System.out.println("Where is your PostgreSQL JDBC Driver? "
    					+ "Include in your library path!");
    			e.printStackTrace();
    			return;
     
    		}
     
    		System.out.println("PostgreSQL JDBC Driver Registered!");
     
    		Connection connection = null;
    		ArrayList<String> datatab= new ArrayList<String>();
    		try {
     
    			connection = DriverManager.getConnection(
    					"jdbc:postgresql://192.168.1.48:5432/asterisk", "asterisk",
    					"proformatique");
     
    			ResultSet resultats = null;
    			String requete = "SELECT * FROM call_log";
     
     
    			try {
    			Statement stmt = connection.createStatement();
    			resultats = stmt.executeQuery(requete);
    			Call acall=new Call();
    			while(resultats.next()) {
     
    				System.out.println(resultats.getString("id"));
    				System.out.println(resultats.getString("date"));
    				System.out.println(resultats.getString("duration"));
    				datatab.add(resultats.getString("id"));
    				acall.setID(resultats.getString("id"));
    				datatab.add(resultats.getString("date"));
    				acall.setDate(resultats.getString("date"));
    				datatab.add(resultats.getString("duration"));
    				acall.setDuration(resultats.getString("duration"));
    				calls.add(acall);
    			}
    			for (Call asTring: calls) {
    				System.out.println(asTring.toString());
    			}
    			} catch (SQLException e) {
    			//traitement de l'exception
    			}
     
     
    		} catch (SQLException e) {
     
    			System.out.println("Connection Failed! Check output console");
    			e.printStackTrace();
     
    			return;
     
    		}
     
    		if (connection != null) {
    			System.out.println("You made it, take control your database now!");
    		} else {
    			System.out.println("Failed to make connection!");
    		}
     
    		 Statistiques fen = new Statistiques(datatab, calls);
     
    		 fen.setVisible(true);
    	}
     
    	 public Statistiques(ArrayList<String> datatab, ArrayList<Call> calls){
     
    		    this.setLocationRelativeTo(null);
    		    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		    this.setTitle("JTable");
    		    this.setSize(300, 120);
    for (String string : datatab) {
     
    	System.out.println("-------"+string);
    }
    String Stringtableau="{";
    for (Call acall : calls) {
     
    Stringtableau+= acall.toString()+ "\n" ;
     
    }
    //Stringtableau+="}";
    System.out.println(Stringtableau);
     
     
    		    //Les données du tableau
    		    Object[][] data = {datatab.toArray()
    		    		//{resultats.getString("id"), resultats.getString("date"), resultats.getString("duration")}
    		    };
     
     
    		    //Les titres des colonnes
    		    String  title[] = {"ID", "Date", "Durée"};
    		    JTable tableau = new JTable(data, title);
    		   // ArrayList tableauDynamique = new ArrayList(Arrays.asList(tableauSimple));
    		    //Nous ajoutons notre tableau à notre contentPane dans un scroll
    		    //Sinon les titres des colonnes ne s'afficheront pas !
    		    this.getContentPane().add(new JScrollPane(tableau));
     
     
    	 }
     
    }
    Call.java :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    public class Call {
     
    	String ID; 
    	String Date; 
    	String Duration;
     
    	public Call() {}
     
    	public Call(String _ID,String _Date,String _Duration) {
    	ID=_ID;
    	Date=_Date;
    	Duration=_Duration;
    	}
     
    	public String getID() {
    		return ID;
    	}
    	public void setID(String iD) {
    		ID = iD;
    	}
    	public String getDate() {
    		return Date;
    	}
    	public void setDate(String date) {
    		Date = date;
    	}
    	public String getDuration() {
    		return Duration;
    	}
    	public void setDuration(String duration) {
    		Duration = duration;
    	}
     
    	public String toString() {return "{"+ID+","+Date+","+Duration+"}";}
     
     
    }
    Merci d'avance pour votre aide !

  2. #2
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 13
    Par défaut
    Bonjour j'ai avancé dans mes recherches et j'ai vu que le problème pouvait venir de mon comment puis-je faire pour modifier sa valeur pour que mon tableau puisse afficher plusieurs champs dans mon objet ?

    Merci d'avance !

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 42
    Par défaut
    bonjour, ton problème se situe au niveau de la création des différents Calls.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Call acall=new Call();
    while(resultats.next()) {
    En effet, en instanciant UN Call en dehors de la boucle, tu n'aura qu'une seule instance.

Discussions similaires

  1. Client lourd Java et Mac
    Par Ceddoc dans le forum Débuter avec Java
    Réponses: 6
    Dernier message: 16/07/2013, 15h18
  2. Problème Install Client lourd java OEM 10G
    Par genio dans le forum Oracle
    Réponses: 0
    Dernier message: 19/08/2009, 15h28
  3. Interaction entre un client lourd JAVA et des pages PHP
    Par Schyzophrenic dans le forum Général Java
    Réponses: 10
    Dernier message: 18/06/2009, 18h31
  4. Client Lourd Java
    Par Kalipseo dans le forum Débuter avec Java
    Réponses: 9
    Dernier message: 18/12/2008, 14h08
  5. Client lourd java et web service
    Par gs@ab dans le forum Services Web
    Réponses: 6
    Dernier message: 22/11/2006, 18h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo