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

Hibernate Java Discussion :

Extraire les coordonnée de connections de la base de donnée du ficher de configuration


Sujet :

Hibernate Java

  1. #1
    Membre régulier Avatar de Palsajicoco
    Étudiant
    Inscrit en
    Février 2007
    Messages
    229
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 229
    Points : 84
    Points
    84
    Par défaut Extraire les coordonnée de connections de la base de donnée du ficher de configuration
    Salut,

    J'utilise Hibernate pour plusieurs schémas de base de donnée. Ce programme java Hibernate je le compile en une librairie jar et je l'importe dans d'autres programme. Cette méthode est très efficace surtout pour le partage des librairies entre plusieurs personnes. Tour marche bien a priori sauf que les coordonnées de connections dans le config file de Hibernate doivent être a part, en dehors de ficher jar puisque chacun a ses coordonnées a lui. Comment je pourrai extraire les coordonnées de connections de façon qu'ils soient indépendants du fichier Jar. Merci.

  2. #2
    Membre régulier Avatar de Palsajicoco
    Étudiant
    Inscrit en
    Février 2007
    Messages
    229
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 229
    Points : 84
    Points
    84
    Par défaut
    J'arrive enfin a trouver une solution en ajoutant une classe qui contient les informations de la configuration, et j'ouvre toujours une session a partir de cette configuration. Il s’avère qu'il y a une méthode plus propres en utilisant un fichier properties (hibernate.properties). Quelqu’un a une idée comment ça pourrai être?

    Voici mon fichier de config:

    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
    public class HibernateConfiguration{
    	private static final SessionFactory sessionFactory = buildSessionFactory();
     
    	public static SessionFactory buildSessionFactory() {
    		Configuration configuration = new Configuration();
    		configuration.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQLInnoDBDialect");
    		configuration.setProperty("hibernate.connection.url", "jdbc:mysql://localhost/MDB");
    		configuration.setProperty("hibernate.connection.username", "root");
    		configuration.setProperty("hibernate.connection.driver_class", "org.gjt.mm.mysql.Driver");
    		configuration.setProperty("hibernate.connection.password", "xxx");
    		configuration.setProperty("hibernate.current_session_context_class", "thread");
    		configuration.setProperty("hibernate.show_sql", "true"); 
     
    		configuration.addResource("com/oghmasys/nomad/mdblib/mappingxml/Transformation.hbm.xml");
    		configuration.addResource("com/oghmasys/nomad/mdblib/mappingxml/Timeref.hbm.xml");
    		configuration.addResource("com/oghmasys/nomad/mdblib/mappingxml/Libra.hbm.xml");
    		try {
    			return configuration.buildSessionFactory();
    		} catch (Throwable ex) {
    			// Make sure you log the exception, as it might be swallowed
    			System.err.println("Initial SessionFactory creation failed." + ex);
    			throw new ExceptionInInitializerError(ex);
    		}
    	}
     
    	public static SessionFactory getSessionFactory() {
    		return sessionFactory;
    	}
     
    	public static void shutdown() {
    		// Close caches and connection pools
    		getSessionFactory().close();
    	}
    }

  3. #3
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 6 887
    Points
    6 887
    Par défaut
    Je conseille plutôt de passer par le format XML pour configurer Hibernate.

    Tu peux commencer par ici pour démarrer rapidement.
    Ou prendre ce lien en référence ...
    (Le tout sans mauvais jeu de mot)

  4. #4
    Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 51
    Points : 40
    Points
    40
    Par défaut
    Salut,

    Je crois aussi qu'il serait mieux d'utiliser un fichier xml, mais si vous voulez essayer avec un .properties vous devez declarer des variables dans votre classe comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    //Exemple
    private static final String DIALECT= ResourceBundle.getBundle("tonFichierProperties").getString("dialect");
    Ajouter une clé dans le fichier properties, exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dialect=org.hibernate.dialect.MySQLInnoDBDialect
    Puis dans la méthode "buildSessionFactory" il faut remplacer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    		Configuration configuration = new Configuration();
    		configuration.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQLInnoDBDialect");
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    		Configuration configuration = new Configuration();
    		configuration.setProperty("hibernate.dialect", DIALECT);
    J'espère que ça vous aidera

    A+

Discussions similaires

  1. Extraire les coordonnées des points d'intersection et calibrage 3D
    Par Lysasim dans le forum Traitement d'images
    Réponses: 0
    Dernier message: 03/04/2012, 17h22
  2. Réponses: 5
    Dernier message: 06/03/2012, 14h03
  3. Réponses: 3
    Dernier message: 11/03/2010, 16h26
  4. Extraire les ddl des objets de la base de données
    Par tipon20 dans le forum PL/SQL
    Réponses: 1
    Dernier message: 15/10/2008, 11h50
  5. Extraire les coordonnées des triangles d'un X
    Par Rafy dans le forum DirectX
    Réponses: 4
    Dernier message: 08/06/2006, 18h52

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