스프링 2

[기술면접 준비] 비전공자도 쉽게 이해하는 AOP

들어가며 스프링의 기술질문 주제로 단골로 등장하는 AOP. 개념은 잘 아는데 자세하게 설명하려고 하니 어렵다. 그래서 자주 나오는 질문과 질문의 답이 되는 코드를 작성해 보며 개념을 확실하게 머릿속에 넣기 위해 준비했다. 실제로 며칠 전 기술면접에서 AOP에 대한 질문을 받았는데 개념적으로 이해한다고 생각해 준비 없이 대답했다가 호되게 당했다. 이제부터 여러분과 나는 취준생이 되어 AOP에 대해 자세하게 알아보고 답을 정리해보자. Q. AOP는 무엇이고 왜 사용할까요? A. 관점지향 프로그래밍이란 뜻으로 OOP의 개념을 보완하기 위해 사용됩니다. 가령 모든 컨트롤러 요청의 파라미터를 로깅하고 싶을 때, 로깅이라는 기능이 중복될 수 있습니다. 이를 컨트롤러에 진입하기 전에 일괄적으로 처리해 줄 수 있다면 ..

[Intelli J] Springboot + docker-compose 자동으로 함께 실행하기 feat. Gradle plugin 추천

들어가며 토이 프로젝트 진행하면서 Kafka가 필요하여 docker-compose 파일을 만들었다. 도커 컴포트 파일로 로컬 프로젝트를 실행할 때, 보통 아래와 같은 절차를 거친다. docker-compose Up을 하여 컨테이너를 실행한다. 스프링부트를실행한다. 근데 필자는 스프링부트를 실행할 때 자동으로 docker-compose 내에 명시된 컨테이너를 실행하고 싶었다. 왜냐? 터미널 들어가서 명령어 치는 게 귀찮았기 때문이다. docker-compose 자동으로 실행하기 적용하는 순서를 먼저 요약하면 다음과 같다. 기본적으로 각자에게 필요한 docker-compose 파일은 생성했다고 가정하고 진행하니 아직 docker-compose 파일이 없다면 먼저 준비해야 한다. 'com.palantir.do..