Tôi có một ứng dụng Spring Boot với sự phụ thuộc spring-boot-starter-data-jpa
. Lớp thực thể của tôi có chú thích cột với tên cột. Ví dụ:
@Column(name="TestName")
private String testName;
SQL được tạo bởi điều này được tạo ra test_name
dưới dạng tên cột. Sau khi tìm kiếm giải pháp, tôi đã tìm thấy giải pháp đó đã spring.jpa.hibernate.naming_strategy=org.hibernate.cfg.EJB3NamingStrategy
giải quyết được vấn đề (tên cột được lấy từ chú thích cột).
Tuy nhiên, câu hỏi của tôi là tại sao không đặt tên_strategy thành EJB3NamingStrategy
JPA lại bỏ qua chú thích cột? Có lẽ phương ngữ ngủ đông có một cái gì đó để làm với nó? Tôi đang kết nối với MS SQL 2014 Express và nhật ký của tôi chứa:
Unknown Microsoft SQL Server major version [12] using SQL Server 2000 dialect
Using dialect: org.hibernate.dialect.SQLServerDialect
@Column(name="...")
chú thích, chẳng hạn như khi bạn sử dụng loại truy cập khác với loại truy cập mong đợi, nhưng đó không phải là trường hợp ở đây.