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

JDBC Java Discussion :

Faire une application multi plateformes


Sujet :

JDBC Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 74
    Points : 29
    Points
    29
    Par défaut Faire une application multi plateformes
    Bonsoir

    J'ai realisé une simple application avec netbeans
    ou j'ai faire une table de liste des medecins et j'ai realisé une interface pour cette application
    mais je travaille sous ubuntu et je veux que cette application marche dans un autre poste qui a unix
    et aussi dans un autre poste qui a windows
    comment faire??

  2. #2
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    Si tu utilise du java sans utilisé une librairie spécifique à un système donné, tu n'as pas de soucis à te faire ton application fonctionnera partout. Il suffit juste que la machine virtuelle java soit installé sur cette machine.

  3. #3
    Expert confirmé
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Points : 4 539
    Points
    4 539
    Par défaut
    vu que tu as posté dans la rubrique JDBC, je rajoute a l'intervention de darrayliste,l'idée d'opter pour une base de donnée embarqué comme
    HSQLDB qui est une base de données écrite en Java. C'est une base de données embarquée, et que tu peut donc la transporter directement avec votre programme

  4. #4
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 74
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par darrylsite Voir le message
    Si tu utilise du java sans utilisé une librairie spécifique à un système donné, tu n'as pas de soucis à te faire ton application fonctionnera partout. Il suffit juste que la machine virtuelle java soit installé sur cette machine.
    merci bien je vais essayer ta solution mais ou je peux trouver le java virtuelle machine

  5. #5
    Expert confirmé
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Points : 4 539
    Points
    4 539
    Par défaut
    salut

    voila un update 17 bien fraiche

  6. #6
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    Citation Envoyé par anoir19 Voir le message
    merci bien je vais essyer ta solution mais ou je peux trouver le java virtuelle machine
    Utilises tu une base de données?

  7. #7
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    446
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 446
    Points : 128
    Points
    128
    Par défaut
    Comment on peut exporter la base pour utiliser l'application sur une autre machine

  8. #8
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    Citation Envoyé par gentelmand Voir le message
    Comment on peut exporter la base pour utiliser l'application sur une autre machine
    Quelle base utilises tu?
    Ton programme sera vraiment portable si tu utilisais une base de données comme HSQLDB comme l'a dit slim_java.
    Sinon, il faut installer le logiciel de la base de donnée sur la machine en question, puis créer les les differentes tables.

  9. #9
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    446
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 446
    Points : 128
    Points
    128
    Par défaut
    en fait j'utilise la base H2 . et je ne sais pas comment faire pour exporter toute la base ou je dois la recréer sur l'autre machine

  10. #10
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    Je n'ai jamais utilisé h2, mais avec ce que j'ai pu lire, il existe une version java indépendant de tout plateforme. SI tu l'utilise, tu n'auras rien à installer.

  11. #11
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    446
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 446
    Points : 128
    Points
    128
    Par défaut
    mais mon probléme que j'ai essayé d'utiliser le jar sur une autre machine du meme OS et l'application consiste a afficher des éléments dans une ListBox mais ça ne m'affiche rien par contre sur ma machine ça marche malgré le fait que j'ai aussi copié les fichiers de la base .h2 sur l'autre machine

  12. #12
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    en lisant le manuel de h2, j'ai fait quelque test qui ont marchés.
    *ajouter h2.jar au classpath de ton projet
    * utilise le driver JDBC: org.h2.Driver
    * le chemin de la base de donnée : jdbc:h2:~/test ouvre la base de donnée test dans le repertoire courant.

    Voici le code de mon test :
    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
     
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.Statement;
    import org.h2.jdbcx.JdbcDataSource;
     
    public class Main {
     
        /**
         * @param args the command line arguments
         */
        public static void main(String[] args)
        {
           try
           {
               JdbcDataSource ds = new JdbcDataSource();
               ds.setURL("jdbc:h2:˜/test");
               ds.setUser("sa");
               ds.setPassword("sa");
               Connection conn = ds.getConnection();
               Statement st=ds.getConnection().createStatement();
     
               boolean b=st.execute("create table test (nom varchar, prenom varchar);");
               if (b)
                 System.out.println("creation reussie");
               else
               {
                System.out.println("creation non reussie");
                return;
               }
               b=st.execute("insert into test values ('nabster', 'inc');");
               ResultSet rs=st.executeQuery("select * from test");
               while(rs.next())
               {
                System.out.println(rs.getString("nom"));
               }
     
           }
           catch(Exception e)
           {
           e.printStackTrace();
           }
        }
     
    }
    Je n'ai rien installer.

  13. #13
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    446
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 446
    Points : 128
    Points
    128
    Par défaut
    donc je dois ajouter à mon application un code pour créer de nouveau la base de donnée sur l'autre machine ?
    il n'ya pas un autre moyen pour faire ceci sans avoir à lancer les requetes create puis les insert parceque quand j'ai copié la base sur l'autre machine ca ne marche pas, peut etre c'est un truc de chemin.

  14. #14
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    En ecrivons jdbc:h2:˜/test, on s'attend à ce que la base de donnée (les deux fichier h2) se trouve dans le dossier /~.
    Ou places tu les fichiers quand tu change de machine?
    Tu peux voir l'exception lancée pour etre fixée.

  15. #15
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    446
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 446
    Points : 128
    Points
    128
    Par défaut
    je les ai placés sur le bureau mais en fait ça ne me génére pas d'éxception mais ne me retourne pas de resultat

  16. #16
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    Je crois que tu as un probleme de chemin.
    Mais que ce passe t-il si tu copie tout le dossier contenant ton projet sur un autre ordinateur.

    Quel chemin utilises-tu dans le code. Par exmple :"jdbc:h2:˜/test".
    Pour pouvoir voir les exception, il faut executer l'application a partir de la console.

  17. #17
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    446
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 446
    Points : 128
    Points
    128
    Par défaut
    en fait je mets dans le code "jdbc:h2:˜/test"
    mais comment je fais si je veux la mettre dans un dossier avec le jar et comme ça je change dans le code mais je ne sais pas qu'est ce que je dois écrire.
    en plus à travers l'interface de H2 quand je change en jdbc:h2:BDDapplication/test je ne sais pas ou il crée la base .

    j'ai essayé ceci String url = "jdbc:h2:./data/test"; et je copié la base dans un dossir data avec mon projet mais ca ne marche encore pas et c'est ca l'exception Table CLIENT not found; SQL statement:
    PS: je ne crée pas la base en code java .

  18. #18
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    j'ai essayé ceci String url = "jdbc:h2:./data/test"; et je copié la base dans un dossir data avec mon projet mais ca ne marche encore pas et c'est ca l'exception Table CLIENT not found; SQL statement:
    PS: je ne crée pas la base en code java .
    Apparemment le chemin de la base est correcte. Selon l'exception lancée, l'erreur vient de la requête sql qui ne trouve pas la table client.
    Est tu sur d'avoir dejà crée les tables dans la base de donnée?

  19. #19
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    Voici comment tu peux mettre les chemins :
    .. Si tu veux que la base soit dans le même dossier que le jar : url="jdbc:h2:test"; ou url="jdbc:h2:./test";
    .. Si c'est dans un dossier projet/base, et que le chemin du jar est projet/java.jar, le chemin doit être url="jdbc:h2:/base/test";

    Mais je crois que le problème avec ton code vient maintenant de la requête sql. Les tables ne sont pas encore crée dans la base de données. Tu peux essayer le même code sur l'ancienne plateforme et tu verras que ça ne marche pas non-plus.

  20. #20
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    446
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 446
    Points : 128
    Points
    128
    Par défaut
    ok je verrai ça

Discussions similaires

  1. développer une application multi-plateforme
    Par Chinomiko dans le forum Linux
    Réponses: 1
    Dernier message: 05/05/2014, 10h45
  2. Bien créer une application multi-langues ? Unicode ou non ?
    Par Maxime Abbey dans le forum Composants VCL
    Réponses: 28
    Dernier message: 10/09/2007, 18h20
  3. Réponses: 5
    Dernier message: 24/09/2005, 21h31

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