Saya memiliki aplikasi Spring Boot dengan ketergantungan spring-boot-starter-data-jpa
. Kelas entitas saya memiliki anotasi kolom dengan nama kolom. Sebagai contoh:
@Column(name="TestName")
private String testName;
SQL yang dihasilkan oleh ini dibuat test_name
sebagai nama kolom. Setelah mencari solusi, saya menemukan bahwa spring.jpa.hibernate.naming_strategy=org.hibernate.cfg.EJB3NamingStrategy
memecahkan masalah (nama kolom diambil dari anotasi kolom).
Namun, pertanyaan saya adalah mengapa tanpa naming_strategy yang disetel ke EJB3NamingStrategy
JPA mengabaikan anotasi kolom? Mungkin dialek hibernasi ada hubungannya dengan itu? Saya terhubung ke MS SQL 2014 Express dan log saya berisi:
Unknown Microsoft SQL Server major version [12] using SQL Server 2000 dialect
Using dialect: org.hibernate.dialect.SQLServerDialect
@Column(name="...")
anotasi, misalnya saat Anda menggunakan jenis akses selain yang diharapkan, tetapi tidak demikian di sini.