The most advanced IntelliJ plugin for managing your JPA data model and beyond

  • Hibernate
  • EclipseLink
  • SpringData
  • Lombok
  • MapStruct
  • ModelMapper
  • Liquibase
  • Flyway
  • Java
  • Kotlin
Powered by world’s most popular Java IDE
IntelliJ IDEA
  • Coding Assistance
    Create JPA entities, Spring Data repositories, DTOs and mappers
  • Database Versioning
    Easily generate database migration scripts for Flyway and Liquibase
  • Reverse Engineering
    Use an existing database to generate entities with associations of all kinds
  • Smart Inspections
    Make sure your code will not fail at runtime
  • Developers Productivity
    Use smart completions to become extremely productive
Get JPA Buddy
Powered by world’s most popular Java IDE
IntelliJ IDEA

JPA Buddy is trusted by hundreds of thousands of Java/Kotlin developers, including Java Rock Stars and Champions. The plugin is top rated at the JetBrains marketplace and one of the most beloved by IntelliJ IDEA users.

Today I got some more time to explore more about JPA Buddy and it’s mind blowing… Super productive…reverse engineering and Flyway/Liquibase migration generation is a life saver.

Siva Prasad Reddy K,, Developer Advocate at AtomicJar

JPA Buddy is a perfect tool for anyone working on data-centric applications. In fact, you can develop an entire CRUD application or a simple microservice by spending nearly zero time writing boilerplate code!

Eugen Paraschiv, the author of, most rated Spring and JPA expert, co-author of JPA Buddy

Thanks to the JPA Buddy team for the great tool that makes Hibernate even closer to developers. It helps learn best practices and immensely accelerates the devs daily routine!

Christian Beikov, Senior Software Engineer at RedHat, Author of Blaze Persistence

Most loved features

JPA Buddy provides an easy start for new developers and speeds up the development process for more experienced ones. It also guides both kinds of developers to follow the best practices of working with JPA. Use visual designers and rich code generation capabilities to make it easier to work with Hibernate, EclipseLink, Spring Data JPA, MapStruct, Lombok, Liquibase and Flyway.
Use intuitive wizards to work with JPA entities more efficient
  • Create new entities, attributes, associations, utility methods and so on...
  • Lombok Support
  • Kotlin Support
Make sure your data model follows best practices with smart inspections
  • Find the right fix if your entity is incorrect
  • Check that your Spring Data repository is correct
  • Detect possible issues using Lombok annotations
  • Make sure you use only the best performing mapping declarations
Use Spring Data JPA with pleasure
  • Create Spring Data JPA repositories, methods and queries
  • Extract JPQL queries from derived methods to keep your code clean
  • Spring Data projections wizard
  • Build EntityGraph for repository methods
  • Audit Support
Convert entities into DDL statements
  • Generate DDL by Entities
  • Append DDL statements into the existing .sql file
  • Resolve validation fails issue right from the stack trace
Save time and efforts on database versioning by automatic generation of Liquibase changelogs and Flyway migrations
  • Differential scripts generation
  • Generating scripts for DB scratch initialization
  • Use smart preview to make sure your differential scripts will not fail on update
  • Generate differential scripts into the existing file
Generate JPA entities based on database tables
  • Generate a JPA entity from the existing database table
  • Generate attributes into the exiting entity from table columns
  • Support for references that are not backed with a column: OneToMany, OneToOne, ManyToMany
Create DTOs and mappers from JPA entities
  • Generate DTOs from JPA entities
  • MapStruct & ModelMapper Support
  • Java Record Support
  • Create JPA entities from POJOs
  • Keep DTOs in sync with its JPA entity
  • Generate DTOs from any POJOs
Coding Assistance
  • Apply intelligent postfix autocompletion and in-code injects for JPA entities, DTOs and MapStruct mappers
  • Edit Liquibase changelog with autocompletion for table and column names
  • Use shortcuts to become extremely productive
  • Kotlin Support