Entity
- DB와 맞닿은 핵심 클래스다.
- Entity 클래스를 기준으로 테이블과 스키마가 생성되고, 비즈니스 로직이 결정된다.
- Request/Response는 여러 테이블을 조인하는 경우도 많고, 아주 자주 변경되기 때문에 Entity 클래스를 사용하면 안 된다.
Dto
- Layer 혹은 서버-클라이언트 간 Request/Response 등 데이터 전달에 사용된다.
- Entity와 유사한 형태더라도 별도의 Dto 클래스를 사용해야 한다.
결론
두 클래스의 역할과 쓰임을 정확하게 알고, DB Layer
와 View Layer
를 반드시 분리해야 한다.