혼자 공부하는 시간의 필요성(스프링 Service, Controller, DAO)
반응형

지금까지 스프링을 사용하다 보면 컨트롤러 단에 모든 비즈니스 로직을 작성했었다.

 

그리고 서비스 단에서 로직을 작성한다는 걸 알긴 했지만 방법은 잘 몰랐었다.

 

그러다보니 컨트롤러가 너무 더러워졌고 MVC 모델 각각 역할에 맞게 분리가 안되고 있다는 느낌을 많이 받았다.

 

서비스 단에 비즈니스 로직을 작성하려고 하니 컨트롤러에만 로직을 작성했던 나로서는 순간 복잡하게 느껴졌다.

 

왜 복잡하게 느껴지는지를 몰라서 혼자 연구하고 파악해보니

 

서비스단을 DAO로 쓰고 있었다는 걸 알게 되었다. 

 

DAOImpl 없앴다고 좋아해놓고서는 서비스 단을 DAOImpl처럼 쓰고 있었던 것이다...

 

DAO와 서비스 단이 1:1로 implements 되는 줄 알았는데 완전 착각에 잘못 알고 있었다.

 

서비스에서 DAO를 호출해서 사용했어야 했는데...

 

사람 맞나 싶다.

 

결국 교육 받았을 때 자료를 다시 보며 공부한 후에야 서비스와 DAO의 구분을 좀 더 정확히 파악하였다.

 

정말 충격적이다. 초보도 이런 실수는 안할 듯...

반응형