使用Spring data jpa 時,表字段(user_id)與實體(userId)不能對應,須要添加如下配置spring
參考:https://www.jianshu.com/p/fc2c79814956app
application.properties 配置ui
無修改命名hibernate
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
遇到大寫加下劃線"_" 的命名code
spring.jpa.hibernate.naming.physical-strategy=org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy
application.propertiesorm
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
ReceptionDBConfig.classci
// 配置字段 protected Map<String, Object> jpaProperties() { Map<String, Object> props = new HashMap<>(); props.put("hibernate.physical_naming_strategy", SpringPhysicalNamingStrategy.class.getName()); props.put("hibernate.implicit_naming_strategy", SpringImplicitNamingStrategy.class.getName()); return props; } @Bean(name = "receptionEntityManagerFactory") public LocalContainerEntityManagerFactoryBean kcEntityManagerFactory(EntityManagerFactoryBuilder builder, @Qualifier("receptionDataSource") DataSource dataSource) { return builder.dataSource(dataSource).packages("com.icil.elsa.milestone.query.entities.reception") .persistenceUnit("reception") .properties(jpaProperties()) // 引入屬性配置 .build(); }