Search code examples
javamysqlspringhibernatepersistence

Creating Entities when I already have Data Model in MySQL Database


I am making a web app with Spring Boot. I am planning on using Spring Data JPA (Hibernate) connected to MySQL. One question I have is that I have already written out the SQL statements to create my database schema. I have my primary keys, foreign keys, relationships all set already. All the tutorials I've seen assume you don't have tables or anything in the database already. If I create entities, how can I ensure they match up to my already existing data model?

I don't mind recreating the entities by hand, since there's not that many classes and manually reverse-engineering won't take too much time. (I have seen a way to reverse engineering using Eclipse but I prefer to use IntelliJ, also I feel that manually writing the Entities may be easier than doing the reverse process.) But I want to make sure that the entity objects I create will match the tables I already have and won't cause trouble. I'm not sure what the best way to go about doing this is. Will Hibernate overwrite my existing schema when I run for the first time?


Solution

  • You can make hibernate to validate your mapping.

    Set this property :

    hibernate.hbm2ddl.auto=validate