Configuration du driver de la base de données à partir d'un fichier properties [Résolu]

Signaler
Messages postés
50
Date d'inscription
jeudi 8 avril 2010
Statut
Membre
Dernière intervention
7 août 2012
-
wilkom2009
Messages postés
50
Date d'inscription
jeudi 8 avril 2010
Statut
Membre
Dernière intervention
7 août 2012
-
Salut,
Je voudrais savoir comment faire la
Configuration du driver de la base de données à partir d'un fichier properties. je ne sais pas si cela va pallier à un problème que je rencontre en ce moment. C'est le fait de figer l'url de la connexion à une base dans une classe java, ce qui fait qu'à chaque installation de l'application sur un autre poste, il faut pointer l'adresse ip du serveur de donnée (exp: url="jdbc:oracle:thin:@192.168.10.19:1521:mabase") et recompiler le package avant de le faire tourner.
Si la solution que j'envisage n'est pas la propice, quelqu'un pourrait m'aider?
Merci d'avance!

6 réponses

Messages postés
50
Date d'inscription
mercredi 10 décembre 2008
Statut
Membre
Dernière intervention
1 juillet 2011

C'est très facile, et la réponse est avec vous,
Explication:

Ce que j'ai vous presente.
le code crée un fichier avec ce nom "[.property]"
s'il est present il se sera pas.

Vous pouvez ecrire n'importe ce que vous voulez suivant:
ff.write( "lang= Langage\n" +"desc=<html> Description :</html>\n");
donc pour vous: ff.write( "connexionString = ??..\n");

puis la méthode p.get("connexionString"),

---------------- NOTE -----------
attention il faux respectez la format dans le fichier "".property ": key=value
Si le key est introuvable: donc vous aurez null
et c'est le cas avec vous.
Messages postés
50
Date d'inscription
mercredi 10 décembre 2008
Statut
Membre
Dernière intervention
1 juillet 2011

Essayer ce lui la`:

// Class
public class Prop {
private String basePathProp =  ".property";
    File fichier;
    FileWriter ff;
    private Properties properties = null;

    public Prop() {
        init();
        try {
            loadProperties(basePathProp);
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "erreur in loading the property file \n" + e.getMessage());
        }
    }

    private void init() {
        fichier = new File(basePathProp);
// si le fichier est present		
        if (!fichier.exists() || !fichier.canRead()) {  
            try {  	
                ff = new FileWriter(fichier);

                ff.write(
                        "lang=Langage\n" +
                        "desc=<html> Description :</html>\n" +                       
                        "1 =XMLBase\n" +
                        "2=Java-Servlet-JSP\n");

            } catch (Exception ex) {
                JOptionPane.showMessageDialog(null, "erreur initialisation....\n" + ex.getMessage());
            } finally {
                try {
                    ff.close();
                } catch (IOException ex) {
                    JOptionPane.showMessageDialog(null, "Erreur in Closing ... \n" + ex.getMessage());
                }
            }
        }
    }


    private void loadProperties(String propertiesFileName) throws FileNotFoundException {
        properties = new Properties();
        FileInputStream fileInputStream = new FileInputStream(propertiesFileName);
        try {
            properties.load(fileInputStream);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                fileInputStream.close();
            } catch (Exception e) {
            }
        }
    }

    public String get(String s) {
        return properties.getProperty(s);
    }

}





// dans le main 
    public static void main(String[] arg) {
        Prop p = new Prop();
        System.out.println("Code=" + p.get("lang"));
        System.out.println("testing Properties");
    }	



Du courage
Messages postés
50
Date d'inscription
jeudi 8 avril 2010
Statut
Membre
Dernière intervention
7 août 2012

Merci, je vais l'essayer. A bientot!
Messages postés
50
Date d'inscription
jeudi 8 avril 2010
Statut
Membre
Dernière intervention
7 août 2012

Salut,
J'ai un autre problème, j'ai créé un fichier .txt dans lequel j'ai mis l'adresse de mon serveur. J'ai ensuite ajouté ce fichier au projet mais quand j'essaie d'exécuter la class main de ton code en mettant le nom du fichier en paramètre au niveau de code=p.get("monfichier"), il me signale : null; comment faut-il faire pour qe je puisse afficher le contenu qe j'ai saisi dans monfichier.txt sous eclipse? C-à-d comment faire pour lire monfichier.txt dans un code java? Est-ce possible?
Merci!
Messages postés
50
Date d'inscription
mercredi 10 décembre 2008
Statut
Membre
Dernière intervention
1 juillet 2011

si vous voulez, visiter:

http://www.javafr.com/codes/JEUX-DEVINER-MOT-DEBUTANTS-JAVA_49448.aspx

et lisez les comments

du courage:
Messages postés
50
Date d'inscription
jeudi 8 avril 2010
Statut
Membre
Dernière intervention
7 août 2012

salut,
Je tiens à te remercier très sincèrement pour ta réponse car j'ai réussi à m'en sortir!
Merci beaucoup!