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 :

[plugin hibernate] schemaUpdate


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 45
    Par défaut [plugin hibernate] schemaUpdate
    bonjour ,

    actuellement je travail sur un projet sous eclipse. pour la partie hibernate j'utilise le plugin hibernateTools. tout fonctionne correctement sauf quand je veut mettre a jour le schéma de base de donné (des int qui devient des float ,...) et bien il m'efface toutes mes données en clair il faite un drop de tout mes table et les recréer. je pensais pour simplement mettre a jours les champs grace a
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <property name="hibernate.hbm2ddl.auto">update</property>
    ou meme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <property name="hibernate.schemaUpdate">true</property>
    mais rien y fait. je sais qu'une fois en prod la base ne doit pas changé mais pour le développement ca devient vite lourd

    voici mon hibernate.cfg.xml utilisé par le plugin hibernate tools

    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
     
    <hibernate-configuration>
    	<session-factory>
    		<!-- The database settings -->
    		<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
            <property name="hibernate.connection.url">jdbc:mysql://localhost/test</property>
     
            <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
    		<property name="hibernate.hbm2ddl.auto">update</property>
    		<property name="hibernate.schemaUpdate">true</property>
    		<property name="show_sql">true</property>
     
     
    		<mapping class="fr.test.Personne"/>
    		<mapping class="fr.test.Ville"/>
    	</session-factory>
    </hibernate-configuration>

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 32
    Par défaut
    Salut,

    Perso j'ai pas ce drop préalable. Voila mon fichier de mapping :

    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
     
     
    <?xml version="1.0" encoding="UTF-8"?>
     
    <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
     
        <hibernate-configuration>
        	<session-factory>
        		<!-- Settings for a local MySQL database. -->
        		<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
     
        		<property name="connection.driver_class">com.mysql.jdbc.Driver</property> <!-- jdbc driver class -->
    			<property name="connection.url">jdbc:mysql://localhost:3306/gepa</property> <!-- jdbc URL -->
    			<!-- Connection en root sur la base de donnée -->
    			<property name="connection.username">root</property> <!-- database user -->
    			<property name="connection.password"></property> <!-- database user password -->
     
    			<!-- Use the C3P0 connection pool. -->
    			<property name="c3p0.min_size">0</property>
    			<property name="c3p0.max_size">50</property>
    			<property name="c3p0.timeout">120</property>
        		<property name="c3p0.max_statements">100</property>
        		<property name="hibernate.c3p0.idle_test_period">0</property>
    			<property name="hibernate.c3p0.acquire_increment">2</property>
     
     
    			<!-- Pour le traitement par paquet. si on fait des traitements par batch  -->
    			<property name="hibernate.jdbc.batch_size">20</property>
     
    			<!-- Pour la mise a jour de la base de donnée en fonction de la configuration -->
    			<property name="hibernate.hbm2ddl.auto">update</property>
     
     
        		<!-- Print SQL to stdout. -->
    			<!-- affiche les requêtes de hibernate si à true -->
    			<property name="show_sql">true</property>
    			<!-- affiche les requêtes de hibernate au format SQL si à true -->
    			<property name="format_sql">true</property>
    			<!-- Affiche des commentaires dans les requête SQL (par défaut à false)-->
    			<property name="hibernate.use_sql_comments">true</property>
     
    			<!-- Hibernate XML mapping files -->
    		</session-factory>	
        </hibernate-configuration>
    Je te met tout. Je suis pas certain que les commentaires soit juste mais le tout fonctionne. J'ai pas de drop, et mes nouveaux champs des tables sont bien ajoutés. Par contre, j'ecris moi-même les fichiers de mapping de mes objets. C'est peut être là le problème... tu pourrais pa en montrer un par hazard ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 45
    Par défaut
    je n'utilise pas les fichier xml mais les annotation voici ce que cela donne
    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
     
     
     
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.EnumType;
    import javax.persistence.Enumerated;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.Table;
    import javax.persistence.Transient;
    import javax.persistence.Version;
     
     
    import common.utils.FlagActivation;
     
     
    @Entity 
    //@Table(catalog="referentiel",name="Personne")
    @Table(name="Personne")
    public class Personne implements java.io.Serializable {
     
     
     
    	private static final long serialVersionUID = 1610274747295951644L;
     
    	private int id;
     
     
    	private long version; 
     
    	private String nom;
    	private String nomJF;
    	private String prenom;
    	private String login;
    	private String password;
    	private Ville residencePersonnelle; 
    	private FlagActivation flag;
     
     
    	public Personne() {
     
    	}
     
     
    	public Personne(String nom, String nomJF, String prenom, String login) {
    		this.nom = nom;
    		this.nomJF = nomJF;
    		this.prenom = prenom;
    		this.login = login;
    	}
     
    	@Id
    	@GeneratedValue(strategy = GenerationType.AUTO)
    	public int getId() {
    		return this.id;
    	}
     
    	@Version
     
    	public long getVersion() {
    		return version;
    	}
     
    	@Column(name="nom",nullable = false)
    	public String getNom() {
    		return this.nom;
    	}
     
    	@Column(name="nomJF")
    	public String getNomJF() {
    		return this.nomJF;
    	}
     
    	@Column(name="prenom",nullable = false)
    	public String getPrenom() {
    		return this.prenom;
    	}
     
    	@Column(name="login",nullable = false,unique=true)
    	public String getLogin() {
    		return this.login;
    	}
    	@Transient
    	//@ManyToOne(targetEntity=Ville.class,cascade=javax.persistence.CascadeType.PERSIST )
    	public Ville getResidencePersonnelle() {
    		return residencePersonnelle;
    	}
     
    	@Column(name="password",nullable = false)
     
    	public String getPassword() {
    		return password;
    	}
     
     
    	@Column(name="flag")
    	@Enumerated(EnumType.STRING)
    	public FlagActivation getFlag() {
    		return flag;
    	}

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 45
    Par défaut
    le problème viendrai du plugin "hibernate tools" car avec mon appli tout ce passe correctement. Le bug a été signalé au développeurs d'hibernate, enfin d'après ce que j'ai pu comprendre.

Discussions similaires

  1. [Plugin][Hibernate Tools] java.lang.NoClassDefFoundError
    Par notrustinyou dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 28/11/2005, 17h17
  2. [Plugin][Hibernate Synchronizer]Hibernate sous Eclipse
    Par Kalou75 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 01/10/2005, 23h28
  3. [Plugin][Hibernate]Eclipse avec hibernate(synchronizer)
    Par mg67 dans le forum Eclipse Java
    Réponses: 7
    Dernier message: 23/06/2005, 17h19
  4. [plugin hibernate] problème d'installation
    Par slymira dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 09/06/2005, 13h06
  5. [Plugin] Hibernate
    Par speedster dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 26/08/2004, 11h01

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