Использование Lombok значительно упрощает код, однако, не смотря на то, что мы используем аннотации вместо того, чтобы писать код вручную, генерируемый код также будет являться частью нашего приложения и его нужно сопровождать, а значит, используя аннотацию, мы должны четко понимать, какой именно код будет сгенерирован.
Например, используя аннотацию
@Data мы должны помнить, что она включает в себя аннотацию @EqualsAndHashCode, которая по умолчанию использует в методе hashCode все атрибуты класса. А если какой-то из атрибутов ссылается на наш класс, это может привести к бесконечной рекурсии. 👉@BookJava