Rumah >Java >javaTutorial >Spring Boot JPA: Mengapa Anotasi Nama Lajur saya Diabaikan?

Spring Boot JPA: Mengapa Anotasi Nama Lajur saya Diabaikan?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-27 16:16:29823semak imbas

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

Anotasi Nama Lajur JPA Boot Musim Bunga Diabaikan

Isu ini timbul apabila nama yang ditentukan anotasi lajur diabaikan dalam SQL yang dihasilkan, mengakibatkan konvensyen lalai sedang digunakan (cth., kes ular).

Punca:

Secara lalai, Spring Boot menggunakan dialek Hibernate yang sepadan dengan pangkalan data yang disambungkan, yang mungkin mengatasi nama anotasi lajur. Dalam kes ini, dialek SQL Server sedang digunakan, yang mencipta lajur menggunakan penamaan kes ular.

Penyelesaian:

Untuk menyelesaikan isu ini dan memastikan nama lajur beranotasi digunakan, seseorang boleh mengatasi strategi penamaan lalai dengan menetapkan secara eksplisit sifat berikut dalam fail 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

Tetapan ini menentukan bahawa strategi penamaan tersirat harus mengekalkan nama jadual dan lajur seperti yang ditakrifkan dalam kelas entiti, manakala strategi penamaan fizikal harus menukar nama lajur kepada format pilihan pangkalan data (cth., kes ular untuk MS SQL Server).

Dengan mengkonfigurasi sifat ini, nama lajur beranotasi akan dihormati dalam SQL yang dihasilkan , membolehkan lebih fleksibiliti dan kawalan ke atas penamaan lajur.

Atas ialah kandungan terperinci Spring Boot JPA: Mengapa Anotasi Nama Lajur saya Diabaikan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn