I was working on my Spring boot app project and noticed that, sometimes there is a connection time out error to my Database on another server(SQL Server).
This happens specially when I try to do some script migration with FlyWay
but it works after several tries.
Then I noticed that I didn’t specify spring.jpa.hibernate.ddl-auto
in my properties file. I did some research and found that it is recommended to add
spring.jpa.hibernate.ddl-auto= create-drop
in development.
And change it to: spring.jpa.hibernate.ddl-auto= none
in production.
But I didn’t actually understand how does it really work and how does hibernate generate database schema using create-drop
or none
value. Can you please explain technically how does it really work, and what are recommendations for using this property in development and on a production server.
Thank you