Hibernate stratégie de nommage
Je suis bâtiment RESTE un webservice avec le Printemps (de Démarrage) et suis en train d'utiliser hibernate comme orm mappeur sans aucune configuration xml.
En gros, j'ai réussi à le faire fonctionner, mais je suis coincé avec un problème de configuration.
J'instancie LocalContainerEntityManagerFactoryBean
comme @Bean
dans un @fichier de Configuration.
J'ai mis hibernate.ejb.naming_strategy
comme dans l'exemple suivant -> cela semble fonctionner pour créer les tables si elles n'existent pas (les noms de colonnes sont camelCase comme dans mon @classes d'Entité), mais lorsqu'une requête est exécutée, hibernate "oublie" à propos de ce nommage de configuration et essaie d'utiliser un autre type de stratégie de nommage avec under_score_attributes --> évidemment, ces requêtes échouent. Est-il de toute autre propriété que je dois mettre?
Ou d'une autre manière de configurer les propriétés de préférence sans l'ajout d'un cfg.xml
ou persistence.xml
?
LocalContainerEntityManagerFactoryBean lef = new LocalContainerEntityManagerFactoryBean();
Properties props = new Properties();
props.put("hibernate.hbm2ddl.auto", "create");
props.put("hibernate.ejb.naming_strategy","org.hibernate.cfg.DefaultNamingStrategy");
lef.setJpaProperties(props);
lef.afterPropertiesSet();
OriginalL'auteur Alex | 2013-10-02
Vous devez vous connecter pour publier un commentaire.
HibernateJpaAutoConfiguration
permet à la stratégie de nommage (et tous les autres JPA propriétés) pour être fixé par l'intermédiaire de configuration externe. Par exemple, dansapplication.properties
:mais où puis-je trouver de la documentation pour ces propriétés?!
et pour répondre à mon commentaire: github.com/spring-projects/spring-boot/blob/master/docs/... c'est très utile...pour toutes les propriétés de configuration automatique
Le lieu pour trouver les propriétés docs.printemps.io/spring-boot/docs/current/reference/htmlsingle/...
Spécifiquement docs.printemps.io/spring-boot/docs/current/reference/htmlsingle/...
OriginalL'auteur Dave Syer
Avez-vous essayé la définition de cette propriété à l'aide programmatique propriétés? Ou un
hibernate.properties
fichier dans le package racine? Ou un système JVM des biens? Tous sont décrits ici.De mon expérience, il y a parfois difficile à diagnostiquer, Hibernate des problèmes si vous insistez sur la non utilisation de XML (ce qui serait ma préférence). Si rien ne fonctionne, vous pouvez être contraint de définir un fichier de configuration au moins.
OriginalL'auteur Jeff Evans
J'ai maintenant la solution.
La JpaAutoConfiguration doivent être exclus. Encore je pense que cela peut-être un bug, normalement, il devrait automatiquement "stand back" lorsque j'utilise mon propre @Configuration.
OriginalL'auteur Alex