클린 아키텍처를 알아보기 전에, 레이어드 아키텍처의 문제점에 대해 짚고 넘어가도록 하겠다.레이어드 아키텍처는 크게 도메인 패키지, 서비스 패키지, 웹 패키지로 구성되어있다.웹 패키지가 서비스 패키지에 의존하고, 서비스 패키지가 도메인 패키지에 의존하고 도메인 패키지는 영속성(JPA)에 의존하게 되는 구조이다. 여기서 레이어드 아키텍처의 문제점은, 영속성 레이어가 기반이 된다는 것이다. 이게 무슨 말이냐면 DB 구조나 세부사항이 도메인, 서비스, 웹 통틀어서 영향을 줄 수 있다는 것이다.레이어드 아키텍처의 JPA Entity 클래스를 보면 영속성 레이어의 세부사항이 많이 노출되어있다. 기본적으로, @Entity, @Column, @GeneratedValue 등 jakarta.persistence의 어노테이..