大家好,我是神韵,是一个技术&生活博主。出文章目的主要是两个,一是好记忆不如烂笔头,记录总结中提高自己。二是希望我的文章可以帮到大家。欢迎来点赞打卡,你们的行动将是我无限的动力。
本篇主题是:JPA自动建表字段名称采用驼峰形式
解决:
在application-test.yml文件加入以下配置
spring:
jpa:
hibernate:
naming:
#采用驼峰命名方式
physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
分析
今天采用JPA + H2和SQL文件插入的方式来写测试类,发现插入数据失败!原因是JPA自动建表的字段命名规则采用的是下划线
开启ddl sql 展示
可以看到建表语句如下,发现自己实体字段命名明明是customerNumber,结果建表语句却是customer_number
Hibernate: create table customer (customer_number varchar(255) not null, primary key (customer_number))
所以导致我要插入的语句都失败,但是我不想以下划线命名
解决: 直接在配置文件application-test.yml加入以下配置
spring:
jpa:
hibernate:
naming:
#采用驼峰命名方式
physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
结果建表语句展示字段名称为驼峰命名,达到想要的效果
Hibernate: create table customer (customerNumber varchar(255) not null, primary key (customerNumber))