From c2aca4d7f5cf3a1a06f4de793984c9c4674085b9 Mon Sep 17 00:00:00 2001 From: Stephane Nicoll Date: Wed, 7 Jun 2017 18:43:20 +0300 Subject: [PATCH 1/2] Document SpringPhysicalNamingStrategy Closes gh-9084 --- spring-boot-docs/src/main/asciidoc/howto.adoc | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/spring-boot-docs/src/main/asciidoc/howto.adoc b/spring-boot-docs/src/main/asciidoc/howto.adoc index 4de4be677e..7b0a81171c 100644 --- a/spring-boot-docs/src/main/asciidoc/howto.adoc +++ b/spring-boot-docs/src/main/asciidoc/howto.adoc @@ -1898,12 +1898,24 @@ The most common options to set are: In addition all properties in `+spring.jpa.properties.*+` are passed through as normal JPA properties (with the prefix stripped) when the local `EntityManagerFactory` is created. + + +[[howto-configure-hibernate-naming-strategy]] +=== Configure Hibernate Naming Strategy Spring Boot provides a consistent naming strategy regardless of the Hibernate generation that you are using. If you are using Hibernate 4, you can customize it using `spring.jpa.hibernate.naming.strategy`; Hibernate 5 defines a `Physical` and `Implicit` -naming strategies: Spring Boot configures `SpringPhysicalNamingStrategy` by default. This -implementation provides the same table structure as Hibernate 4. If you'd rather use -Hibernate 5's default instead, set the following property: +naming strategies. + +Spring Boot configures `SpringPhysicalNamingStrategy` by default. This implementation +provides the same table structure as Hibernate 4: all dots are replaced by underscores and +camel cases are replaced by underscores as well. By default, all table names are generated +in lower case but it is possible to override that flag if your schema requires it. + +Concretely, the `TelephoneNumber` entity will use a `telephone_number` with the default +strategy. + +If you'd rather use Hibernate 5's default instead, set the following property: [indent=0,subs="verbatim,quotes,attributes"] ---- From bddf9232a8116fb1dff4c08d7aeaa71543e06136 Mon Sep 17 00:00:00 2001 From: Stephane Nicoll Date: Wed, 7 Jun 2017 18:48:24 +0300 Subject: [PATCH 2/2] Polish --- spring-boot-docs/src/main/asciidoc/howto.adoc | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/spring-boot-docs/src/main/asciidoc/howto.adoc b/spring-boot-docs/src/main/asciidoc/howto.adoc index 7b0a81171c..2a978dcbd6 100644 --- a/spring-boot-docs/src/main/asciidoc/howto.adoc +++ b/spring-boot-docs/src/main/asciidoc/howto.adoc @@ -1912,8 +1912,7 @@ provides the same table structure as Hibernate 4: all dots are replaced by under camel cases are replaced by underscores as well. By default, all table names are generated in lower case but it is possible to override that flag if your schema requires it. -Concretely, the `TelephoneNumber` entity will use a `telephone_number` with the default -strategy. +Concretely, a `TelephoneNumber` entity will be mapped to the `telephone_number` table. If you'd rather use Hibernate 5's default instead, set the following property: