1 분 소요


◆ Spring에서 자주 사용하는 어노테이션

Spring은 어노테이션을 사용하여 객체 생성, 의존성 주입, 웹 요청 처리, 트랜잭션 관리 등을 간편하게 수행할 수 있다.


1. Bean 등록

Spring이 객체를 생성하여 Spring Container에 등록할 때 사용하는 어노테이션이다.

어노테이션 설명
@Component Spring Bean으로 등록하는 기본 어노테이션
@Service 비즈니스 로직을 담당하는 Service Bean
@Repository DB 접근(DAO, Repository) Bean
@Controller Spring MVC Controller
@RestController REST API Controller (@Controller + @ResponseBody)
@Configuration 설정(Configuration) 클래스
@Bean 메서드에서 반환한 객체를 Bean으로 등록

2. 의존성 주입(DI)

Spring Container에 등록된 Bean을 자동으로 주입할 때 사용한다.

어노테이션 설명
@Autowired Bean 자동 주입
@Qualifier 동일한 타입의 Bean이 여러 개일 때 지정하여 주입
@Primary 기본 Bean으로 우선 선택

3. 웹 요청 처리

Spring MVC에서 HTTP 요청을 처리할 때 사용하는 어노테이션이다.

어노테이션 설명
@RequestMapping URL 요청 매핑
@GetMapping GET 요청 처리
@PostMapping POST 요청 처리
@PutMapping PUT 요청 처리
@DeleteMapping DELETE 요청 처리
@PatchMapping PATCH 요청 처리

4. 요청 데이터 처리

클라이언트가 전달한 데이터를 Controller에서 받을 때 사용한다.

어노테이션 설명
@RequestParam 쿼리 파라미터 값 받기
@PathVariable URL 경로 값 받기
@RequestBody JSON 데이터를 객체로 변환
@ResponseBody 객체를 JSON 형태로 반환
@ModelAttribute 폼(Form) 데이터를 객체로 바인딩

5. 응답 처리

클라이언트에게 응답을 반환할 때 사용한다.

어노테이션 설명
@ResponseStatus HTTP 상태 코드 지정
@ResponseBody 객체를 JSON으로 반환
@RestController 모든 메서드에 @ResponseBody 적용

6. 예외 처리

예외를 처리할 때 사용하는 어노테이션이다.

어노테이션 설명
@ExceptionHandler 특정 예외 처리
@ControllerAdvice 모든 Controller의 공통 예외 처리
@RestControllerAdvice REST API 공통 예외 처리

7. 트랜잭션

데이터베이스 작업을 하나의 작업 단위로 관리한다.

어노테이션 설명
@Transactional 트랜잭션 시작 및 관리

8. 값(Value) 주입

설정 파일(application.properties, application.yml)의 값을 가져올 때 사용한다.

어노테이션 설명
@Value 설정 값을 변수에 주입

9. 환경 설정

Spring 설정 클래스를 작성할 때 사용한다.

어노테이션 설명
@Configuration 설정 클래스 지정
@Bean Bean 등록

10. 테스트

Spring 테스트에서 사용하는 어노테이션이다.

어노테이션 설명
@SpringBootTest Spring Boot 테스트
@MockBean Mock Bean 등록
@Autowired 테스트 객체 주입

11. Bean Scope

Bean의 생성 범위를 지정한다.

어노테이션 설명
@Scope("singleton") Singleton (기본값)
@Scope("prototype") 사용할 때마다 새로운 객체 생성
@RequestScope HTTP 요청마다 새로운 Bean 생성
@SessionScope 세션마다 새로운 Bean 생성

태그:

카테고리:

업데이트:

댓글남기기