Spaltennamenanmerkung wird in Spring Boot JPA ignoriert
Problem:
Trotz Verwendung von Spaltenanmerkungen In Spring Boot-Anwendungen mit Daten-JPA-Abhängigkeit unterscheiden sich die generierten SQL-Tabellenspaltennamen von den Anmerkungen.
Ursache:
Dieses Verhalten wird normalerweise durch den Ruhezustandsdialekt verursacht gebraucht. In Versionen vor Hibernate 5 verwendet Hibernate eine Standardbenennungsstrategie, die Spaltennamen einen Unterstrich voranstellt. Um diese Strategie außer Kraft zu setzen, müssen Sie die Benennungsstrategie explizit angeben.
Lösung:
Für Hibernate 4:
Setzen Sie die Eigenschaft spring.jpa.hibernate.naming_strategy auf org.hibernate.cfg.EJB3NamingStrategy:
<code class="properties">spring.jpa.hibernate.naming_strategy=org.hibernate.cfg.EJB3NamingStrategy</code>
Für Hibernate 5:
Fügen Sie die folgenden Zeilen zu Ihrem hinzu application.properties-Datei:
<code class="properties">spring.jpa.hibernate.naming.implicit-strategy=org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl</code>
Durch die Verwendung dieser Einstellungen übernimmt Hibernate eine Benennungsstrategie, die die in Ihren Entitäten angegebenen Spaltenanmerkungen berücksichtigt.
Das obige ist der detaillierte Inhalt vonHier sind einige Titeloptionen, die die Frage und das Problem hervorheben: Kurz & direkt: * Warum werden meine Spaltenanmerkungen in Spring Boot JPA ignoriert? * Spring Boot JPA: Spaltennamen stimmen nicht überein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!