zoukankan      html  css  js  c++  java
  • 解决 Springboot Unable to build Hibernate SessionFactory @Column命名不起作用

    问题:

    Springboot启动报错:

    Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory

    Caused by: javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory

    Springboot 版本 1.4.3.RELEASE
    Hibernate相关属性:
    spring.jpa.hibernate.ddl-auto=validate

     

    解决:

    配置application.properties为

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

    过程:

    配置

    debug=true
    spring.jpa.show-sql=true

    日志提示@Column(name)的注解与数据库字段不匹配。发现问题。

    原因:

    Springboot的JPA由Hibernate实现。Springboot中默认配置的物理命名策略naming.physical-strategy为org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy。把Identifier name用toUnderScoreCase下划线命名规则转换一次…真是反直觉……

    一般大公司都会对常用组件基于开源项目自己去做一套框架去使用,并不能完全发挥Springboot“无配置”整合第三方框架的优点,踩到的坑会比传统Spring深一点…

  • 相关阅读:
    【bozj2287】【[POJ Challenge]消失之物】维护多值递推
    书籍
    图书管理系统-单表的增删改查
    Django之ORM
    app的创建和注册
    登陆示例
    django 静态文件配置
    安装django及配置
    Bootstrap
    导图
  • 原文地址:https://www.cnblogs.com/niceboat/p/6253181.html
Copyright © 2011-2022 走看看