zoukankan      html  css  js  c++  java
  • Spring Data JPA column 驼峰与下划线的转化

    使用Spring data jpa 时,表字段(user_id)与实体(userId)不能对应,需要添加以下配置

    参考:https://www.jianshu.com/p/fc2c79814956

    峰与下划线的转化 通用配置:

    application.properties 配置

    无修改命名

    spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl 
    

    遇到大写加下划线"_" 的命名

    spring.jpa.hibernate.naming.physical-strategy=org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy
    

    如果项目中使用的表既有下划线,又有驼峰,而且还不想使用@Column一个个标识:

    application.properties

    spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl 
    
    

    ReceptionDBConfig.class

    // 配置字段
    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();
    	}
    
  • 相关阅读:
    2020软件工程个人作业06————软件工程实践总结作业
    2020软件工程作业01
    班级博客V2.1版本更新日志
    博客园班级手机版
    班级帮助文档
    问题累计
    2020 软件工程作业06
    2020 软件工程作业04
    2020 软件工程作业03
    2020软件工程02
  • 原文地址:https://www.cnblogs.com/wanthune/p/11104564.html
Copyright © 2011-2022 走看看