Maison > Java > javaDidacticiel > le corps du texte

Spring Boot JPA : pourquoi l'annotation de mon nom de colonne est-elle ignorée ?

Mary-Kate Olsen
Libérer: 2024-10-27 16:16:29
original
729 Les gens l'ont consulté

  Spring Boot   JPA: Why is my Column Name Annotation Ignored?

Annotation du nom de colonne JPA Spring Boot ignorée

Ce problème survient lorsque le nom spécifié de l'annotation de colonne est ignoré dans le SQL généré, ce qui entraîne le convention par défaut utilisée (par exemple, le cas du serpent).

Cause :

Par défaut, Spring Boot utilise le dialecte Hibernate correspondant à la base de données connectée, qui peut remplacer le nom de l'annotation de colonne. Dans ce cas, le dialecte SQL Server est utilisé, ce qui crée des colonnes en utilisant la dénomination en casse serpent.

Solution :

Pour résoudre ce problème et garantir le nom de colonne annoté est utilisé, on peut remplacer la stratégie de dénomination par défaut en définissant explicitement les propriétés suivantes dans le fichier application.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
Copier après la connexion

Ces paramètres spécifient que la stratégie de dénomination implicite doit conserver les noms de table et de colonne tels que définis dans le classe d'entité, tandis que la stratégie de dénomination physique doit convertir les noms de colonnes au format préféré de la base de données (par exemple, le cas du serpent pour MS SQL Server).

En configurant ces propriétés, le nom de colonne annoté sera respecté dans le SQL généré , permettant une plus grande flexibilité et un plus grand contrôle sur la dénomination des colonnes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!