У мене є програма Spring Boot із залежністю spring-boot-starter-data-jpa
. Мій клас сутності має анотацію стовпця з назвою стовпця. Наприклад:
@Column(name="TestName")
private String testName;
SQL, що генерується цим, створюється test_name
як назва стовпців. Після пошуку рішення я виявив, що spring.jpa.hibernate.naming_strategy=org.hibernate.cfg.EJB3NamingStrategy
вирішив проблему (назва стовпця взята з анотації стовпців).
І все-таки моє запитання: чому без nameing_strategy, встановленого на EJB3NamingStrategy
JPA, ігнорується анотація стовпців? Можливо, сплячий діалект має щось спільне з цим? Я підключаюся до MS SQL 2014 Express, і мої журнали містять:
Unknown Microsoft SQL Server major version [12] using SQL Server 2000 dialect
Using dialect: org.hibernate.dialect.SQLServerDialect
@Column(name="...")
анотації, наприклад, коли ви використовуєте інший, ніж очікуваний тип доступу, але це не так.