스프링에서 Service ServiceImpl 사용하는 이유
·
WEB/Spring
스프링에서 Service 인터페이스와 ServiceImpl로 구현하는 구조를 사용한 경우를 자주 볼 수 있다.이와 같은 사용 방법은 스프링의 의존성 주입(DI)에 관련 인터페이스를 구현하는것과 연관이 깊다.Service 인터페이스와 ServiceImpl 구조로 사용하는 이유 1. 객체 간의 결합도를 낮추어 유연한 개발을 하기위함, 하나의 인터페이스를 구현 다형성을 줌으로서 하나의 인터페이스만 바라보지 않게 의존관계를 줄일 수 있다. 2. Spring의 AOP Proxy를 만들기 위함, @Transactional 어노테이션 같은 경우 인터페이스가 존재해야지만 동작할수 있기에 필요하다.(AOP는 기본적으로 Dynamic Proxy를 사용 이같은 경우 인터페이스 기반으로 동작, CGLIB를 사용할경우는 예외 ..