Aleksey Stukalov
JPA Buddy and React Buddy become part of the JetBrains Family
We are happy to announce that JPA Buddy and React Buddy have been acquired by JetBrains!
11 September 2023
Georgii Vlasov
What's new in JPA Buddy 2023.3
The new major JPA Buddy release supports Blaze Persistence and Hibernate Envers. It also enables applying custom naming conventions for database migration scripts generation and reverse engineering. Check out this article for more details!
19 July 2023
Georgii Vlasov
(Hopefully) the final article about equals and hashCode for JPA entities with DB-generated IDs
In this article, we’ll explore the proper implementation of the equals() and hashCode() methods for JPA entities. While you can find a lot of implementations on the internet, it's crucial to understand the reasoning behind the chosen implementations to avoid potential issues.
11 July 2023
Andrey Belyaev
Dynamic Entity Graphs in Spring Data JPA
Entity Graph is a popular method for optimizing JPA join queries. In Spring Data JPA, we are required to describe each graph in the source code. If we need to fetch an entity with different associations, we need to specify a separate graph and define a distinct repository method. It may lead to code pollution with similar but slightly differently named methods. In this article, we will talk about JPA entity graphs and a library that enables the generation and application of entity graphs dynamically.
29 June 2023
Georgii Vlasov
What's new in JPA Buddy 2023.2
Enhanced reverse engineering, full ModelMapper support, improved "Extract to MappedSuperclass" action, advanced multi-module projects support and more in the new major JPA Buddy release.
17 May 2023
Andrey Belyaev
Testing applications with JPA Buddy and Testcontainers
Tescontainers is a great technology that allows us to create a production-like environment for integration testing. This article will review the most popular case – testing an application’s services and data access layer.
8 May 2023
Andrey Belyaev
DB-first vs. JPA-first approach
When starting a new project, where will you start? Will you create a proper database schema and then implement an app over it? Or you’re a Java person and start with a beautiful JPA model to reflect business requirements and then create a database? In this article, we’ll have a look at both approaches and figure out why development tools matter for Java-to-DB model synchronization.
27 March 2023
Georgii Vlasov
What's new in JPA Buddy 2023.1
Improved DTO Generator, better support for new Hibernate 6 features, enhanced Coding Assistance and more in the new major JPA Buddy release.
27 February 2023
Andrey Belyaev
Hibernate 6 - what's new and why it's important
Hibernate is a popular open-source Object-Relational Mapping (ORM) framework for Java applications. Hibernate 6 is the latest version of the framework, which comes with several new features and improvements. In this article, we’ll discuss new APIs and architectural changes in Hibernate 6 and see why this release is a big step forward.
1 February 2023
Georgii Vlasov
JPA Buddy 2022 recap
2022 is almost over. This year JPA Buddy delivered a lot of new features, surpassed 3M total downloads, and many more. In this article, we decided to summarize the results of our work in the past year.
28 December 2022
Andrey Belyaev
Entity to DTO – how-to
DTO is probably the most straightforward pattern in object-oriented programming. What could be the motives for using DTOs in our applications? How to create them properly? Is Spring Data JPA projection a proper DTO? In this article, we’ll try to answer all these questions.
12 December 2022
Georgii Vlasov
What's new in JPA Buddy 2022.5
The redesigned JPA Buddy panel, a lot of coding assistance features, enhanced DTO Generator and more in the new major JPA Buddy release.
6 December 2022
Andrey Belyaev
Spring Data JPA to Spring Data JDBC – a smooth ride?
Many developers complain that JPA is slow, and they are eager to replace it with something "simpler," "lightweight," and "manageable." Recently Spring team published a new framework - Spring Data JDBC, which is very similar to Spring Data JPA in terms of API but uses JDBC directly. In this article, we will try to replace Spring Data JPA and see what affects the code apart from API changes due to the new framework.
17 October 2022
Aleksey Stukalov
What's new in JPA Buddy 2022.4
Hibernate 6, better usability, significant enhancements for DTOs, and more in the new major JPA Buddy release.
7 September 2022
Georgii Vlasov
Spring Data JPA Interview Questions and Answers
Spring Data JPA is one of the most popular starters used in Spring-based applications. In this article, we will take a look at the most popular Spring Data JPA interview questions. Also, we'll discuss underlying technologies – JPA and Hibernate. First, there will be some basic questions on general knowledge, and then we'll review advanced topics.
10 August 2022
Aleksey Stukalov
New Price for JPA Buddy
From September 1st, 2022, we plan to increase the price. We're still standing on the affordable pricing offering, so it should not hit your wallet. At the same time it will be a great help for us. The difference will be invested back and allow us to keep a small dedicated team working full time on making JPA Buddy better daily!
4 August 2022
Andrey Belyaev
How to store text in PostgreSQL: tips, tricks, and traps
DDL generation based on JPA entities definition is a daily task for many developers. In most cases, we use tools like Hibernate's built-in generator or JPA Buddy plugin. They make the job easier, but there are exceptions. When it comes to storing big chunks of data in the database, things get a bit complicated.
4 July 2022
Georgii Vlasov
What's new in JPA Buddy 2022.3
JPA Buddy 2022.3.0 is out! In this release, we introduce completely new features like "Generate DDL by Entities" and "Extract to MappedSupperclass" action and many improvements: Reverse Engineering, IBM Db2 support, and others. Let's have a look at the most noticeable changes in detail.
23 June 2022
Andrey Belyaev
Synchronization Methods for Many-To-Many Associations
This article will highlight common issues that happen when adding synchronized methods for many-to-many bidirectional associations in JPA entities.
4 May 2022
Georgii Vlasov
What's new in JPA Buddy 2022.2
A lot has happened over the last three releases of JPA Buddy. In this article, we will take a look at the major improvements and new features.
13 April 2022
Aleksey Stukalov
JPA Buddy goes Freemium
Up till the 2022.2 version, all JPA Buddy features were free. In September 2021 we announced that a few of them will become available only under the commercial subscription. However, most of the plugin features will remain free. In this article, we would like to share our understanding and the logic of choosing between the free and the paid part.
8 April 2022
Andrey Belyaev
The Ultimate Guide on Composite IDs in JPA Entities
Previously, we talked about IDs generated in database and applications, discussed the pros and cons of various strategies for generation and implementation details.
21 March 2022
Andrey Belyaev
The Ultimate Guide on Client-Generated IDs in JPA Entities
In the previous article, we discussed server-generated IDs for JPA entities.
16 February 2022
Georgii Vlasov
Inheritance vs Composition in JPA
«Don't repeat yourself» or «DRY». Developers try to adhere to this principle during software development.
24 January 2022
Andrey Belyaev
The ultimate guide on DB-generated IDs in JPA Entities
JDBC and relational databases do not require primary or unique keys for a table.
11 January 2022
Aleksey Stukalov
The First Annual Recap from JPA Buddy
2021 is almost over. This year JPA Buddy met its first user and grew up into one of the most rated plugins in the IntelliJ IDEA marketplace. In this article we decided to share a short story behind JPA Buddy, its achievements in 2021 and plans for 2022.
22 December 2021
Andrey Oganesyan
What’s new in JPA Buddy 5
JPA Buddy has learned some new tricks! Let’s take a look at what features were rolled out in the latest major release: reverse engineering, new entity designer capabilities, improved settings, more code generation tools and other useful things.
21 October 2021
Aleksey Stukalov
Soft Deletion in Hibernate: Things You May Miss
In this article we will take a look into some details that stay uncovered by most of the articles about soft deletion implementation using Hibernate.
27 August 2021
Andrey Oganesyan
What's New in JPA Buddy — July 2021
JPA Buddy keeps evolving, with new features being rolled out each release. Let’s look at the main features added in the latest couple of releases. Visual tools for SQL files, Flyway callbacks and migrations in Java/Kotlin, clearer view of Liquibase changelog structure and other things!
19 July 2021
Andrey Oganesyan
Best Practices and Common Pitfalls of Using JPA (Hibernate) with Kotlin
Kotlin is great: it’s more concise and expressive than Java, it allows for safer code and offers seamless interoperability with Java. The latter allows developers to migrate their projects to Kotlin without having to rewrite the entire codebase. Such migrations is one of the reasons why we might have to work with JPA in Kotlin. Picking JPA for a fresh Kotlin application also makes sense, as it is a mature technology familiar to the developers.
24 June 2021
Andrey Oganesyan
What’s New in JPA Buddy 3.0
JPA Buddy 3.0 is out! Support for Flyway script generation and Kotlin are finally here, along with other improvements and fixes. Let’s take a closer look at what it offers.
28 April 2021
Andrey Oganesyan
Lombok and JPA: What may go wrong?
Lombok is a great tool that makes your Java code concise and clean. However, there are a few things to consider when using it with JPA. In this article we’ll look at how the misuse of Lombok can hurt the performance of JPA applications or even crash them, and how to avoid that but still gain the benefits of using Lombok.
19 April 2021
Andrey Oganesyan
Hibernate Naming Strategies: JPA Specification vs Spring Boot Opinionation
Each time we inject a dependency into our project, we sign a contract, which often has lots of hidden things "written in the fine print". In this article we will take a look at something you could miss when signing a tripartite contract between you, Hibernate and Spring Boot. We will talk about the naming strategies.
15 March 2021
Aleksey Stukalov
JPA goes even easier with its Buddy
So, Hello World... After almost a year of development, the first version of JPA Buddy has finally been released! This is a tool which is supposed to become your faithful coding assistant for projects with JPA and everything related: Hibernate, Spring Data, Liquibase and other mainstream stack.
25 January 2021