使用Spring Boot 進行JDBC:使用Hibernate 處理大寫表名稱
將實體對應到資料庫中的表時,可能會遇到相關問題區分大小寫。 Spring Boot 利用 Hibernate 進行 JPA(Java Persistence API)操作,了解 Hibernate 如何處理這些場景至關重要。
在使用大寫列名定義表實體的情況下,表名本身可能不是在資料庫插入期間正確轉換為大寫。因此,該表可能會在資料庫中以小寫形式顯示,從而導致資料存取問題。
要解決此問題,可以將 spring.jpa.hibernate.naming_strategy 屬性配置為使用不同的命名策略。預設情況下,Spring Boot 使用 org.hibernate.cfg.ImprovedNamingStrategy,它更喜歡小寫表名。
此場景的適當策略是使用 org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl。此策略維護 Java 實體中定義的表名稱的大小寫。要啟用此功能,請修改 application.properties 檔案以包含以下屬性:
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
透過實施此更改,表名稱將保留其原始大寫格式,解決了在資料庫中。這種方法允許與資料庫無縫交互,同時保持表名稱的大小寫敏感度。
以上是如何確保 Spring Boot 中的 Hibernate 使用大寫表名?的詳細內容。更多資訊請關注PHP中文網其他相關文章!