介绍
介绍
福哥在使用hibernate构建项目模型的时候,发现我的实体对象里面写的映射的字段名称和程序实际映射的字段名称不一致,福哥写的是“userName”,而实际程序映射的却是“user_name”,要不要这么无耻啊??
甚至hibernate的审查程序还“帮”福哥建立了这些下划线字段。。。
解决
原来hibernate默认的数据库字段命名策略是下划线形式的,也就是全部都是小写,然后用下划线分隔多个单词的策略。福哥不喜欢这种形式的命名策略,主要是它形成的字段名称太长了。
要解决这个问题就需要在application.properties配置文件里面指定hibernate的数据库字段命名策略。
驼峰命名
因为hibernate默认是下划线形式的,如果要改成驼峰形式的需要增加如下的设定。
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
下划线命名
默认hibernate就是下划线形式的,如果要用下划线形式可以去掉这行配置就可以了。
当然强迫症童鞋可以设置下面这个设定来明确指定下划线为映射字段的策略。
spring.jpa.hibernate.naming.physical-strategy=org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy
测试
再来测试JPA程序,正常了~~