일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 오블완
- k8s
- JavaScript
- 예제로 배우는 스프링 입문
- 코딩테스트
- 스프링핵심원리
- 카카오
- ElasticSearch
- java
- 스프링 핵심원리
- 알고리즘정렬
- 자바스크립트
- kubernetes
- Effective Java
- 자바
- 티스토리챌린지
- 카카오 면접
- 이펙티브자바
- Effective Java 3
- 이펙티브 자바
- 알고리즘
- 이차전지관련주
- Sort
- 엘라스틱서치
- 스프링
- Spring
- 김영한
- 클린아키텍처
- 스프링부트
- effectivejava
- Today
- Total
Kim-Baek 개발자 이야기
[카카오 면접] @Service,@Controller,@Component 차이 본문
카카오 면접을 준비하면서, 공부했던 내용을 정리해놓고 다시 기억하기 위한 포스팅
@Component
Spring에서 관리되는 객체임을 표시하기 위해 사용하는 가장 기본적인 annotation이다. 즉, scan-auto-detection과 dependency injection을 사용하기 위해서 사용되는 가장 기본 어노테이션이다.
@Controller
Web MVC 코드에 사용되는 어노테이션이다. @RequestMapping 어노테이션을 해당 어노테이션 밑에서만 사용할 수 있다.
@Repository
이것은 Annotation based Configuration, @Repository의 작업은 플랫폼 별 예외를 잡아서 Spring의 통합 검사되지 않은 예외 중 하나로 다시 던지는 것입니다. 이를 위해 PersistenceExceptionTranslationPostProcessor이 제공되며 다음과 같이 Spring의 애플리케이션 컨텍스트에 추가해야합니다.
<bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"/>
이 빈 포스트 프로세서는 @Repository로 주석이 달린 모든 빈에 권고자를 추가하여 플랫폼 별 예외를 포착 한 다음 Spring의 확인되지 않은 데이터 액세스 예외 중 하나로 다시 발생시킵니다.
@Service
비즈니스 로직이나 respository layer 호출하는 함수에 사용된다. 다른 어노테이션과 다르게 @Component에 추가된 기능은 없다. 하지만 나중에 Spring 측에서 추가적인 exception handling을 해줄 수도 있으니 비즈니스 로직에는 해당 어노테이션을 사용하자.
일반적으로 컴포넌트 클래스들에 @Component를 붙일 수 있지만, @Repository, @Service, @Controller를 붙인다면 도구들이 클래스들을 처리하는데 더 적합하도록 할 수 있고 관점(aspects)에 더 연관성을 부여할 수 있다. - AOP 를 통한 처리가 쉽게 가능하다
IT기업 취업을 준비하는데 막막하신 분들을 위해 네이버 공채 합격자도 배출하고, 수강생들이 추천하는 원데이클래스를 소개해드릴게요.
취업준비가 막막하시고 어떻게 공부를 해야하고 시작해야할지 답답하신 분들에게 추천드려요!
전체적인 취업 프로세스에 대한 설명, 준비 방법, 공부 방향성을 제시해드려요. 수강생 모두 평점 만점을 준 만족도 높은 강의입니다 :)
'개발 > Spring' 카테고리의 다른 글
[카카오 면접] @WebServelet @Controller (0) | 2020.09.18 |
---|---|
[카카오 면접] 스프링의 여러 어노테이션 (0) | 2020.09.18 |
[카카오 면접] Spring Filter, Interceptor, AOP (3) | 2020.09.06 |
[카카오 면접] 서블릿 컨테이너, 스프링부트 동작 과정 (0) | 2020.08.31 |
[책] 스프링 철저 입문 - AOP (0) | 2020.08.31 |