빵구의 개발 메꾸기

스프링 부트(Spring Boot) 특징 및 어노테이션(Annotation) 활용 본문

BACK-END/SPRING BOOT

스프링 부트(Spring Boot) 특징 및 어노테이션(Annotation) 활용

bkjo94 2022. 4. 15. 21:17

<스프링 부트(Spring Boot) 특징>

1. 어플리케이션 개발에 필수 요소들만 모아둠

2. 간단한 설정으로 개발 및 커스텀 가능

3. 간단하고 빠르게 어플리케이션 실행 및 배포가 가능

4. 대규모프로젝트에 필요한 비 기능적 기능도 제공

5. Spring에서의 XML 설정 등 불편한 설정 필요 X

 

<스프링 부트(Spring Boot) 어노테이션(Annotation)>

@SpringBootApplication

▶ Spring boot apllication으로 설정

 

@Controller 

▶ View를 제공하는 controller로 설정

 

@RestController

▶ REST API를 제공하는 controller로 설정

 

@RequestMapping

▶ URL 주소를 매핑

 

@GetMapping

▶ Http GetMethod URL 주소 매핑

 

@PostMapping

▶ Http PostMethod URL 주소 매핑

 

@PutMapping

▶ Http PutMethod URL 주소 매핑

 

@DeleteMapping

▶ Http DeleteMethod URL 주소 매핑

 

@RequestParam

▶ URL Query Parameter 매핑

 

@RequestBody

▶ Http Body를 Parsing 매핑

 

@Valid

▶ POJO Java Class의 검증

 

@Configration

▶ 1개 이상의 bean을 등록할 때 설정

 

@Component

▶ 1개의 Class 단위로 등록할 때 사용

 

@Bean

▶ 1개의 외부 라이브러리로부터 생성한 객체를 등록 시 사용

 

@Autowired

 ▶ DI를 위한 곳에 사용

 

@Qualifier

▶ @Autowired 사용 시 bean이 2개 이상일 때 명시적 사용

 

@Resource

▶ @Autowired + @Qualifier의 개념

 

@Aspect

▶ AOP 적용 시 사용

 

@Before

▶ AOP 메서드 이전 호출 지정

 

@After

▶ AOP 메서드 호출 이후 지정 예외 발생 포함

 

@Around

▶ AOP 이전/이후 모두 포함 예외 발생 포함

 

@AfterReturning

▶ AOP 메서드의 호출이 정상일 때 실행

 

@AfterThrowing

▶ AOP 시 해당 메서드가 예외 발생 시 지정

 

<Validation>

@Size

▶ 문자 길이 측정

 

@NotNull

▶ null 불가

 

@NotEmpty

▶ null, "" 불가

 

@NotBlank

▶ null, "", " " 불가

 

@Past

▶ 과거 날짜

 

@PastOrPresent

▶ 오늘이거나 과거 날짜

 

@Future

▶ 미래 날짜

 

@FutureOrPresent

▶ 오늘이거나 미래 날짜

 

@Pattern

▶ 정규식 적용

 

@Max

▶ 최대값

 

@Min

▶ 최소값

 

@AssertTrue / False

▶ 별도 Logic 적용

 

@Valid

▶ 해당 object validation 실행

Comments