[SpringBoot] 어노테이션 정리

SMongS·2022년 9월 15일
0

Spring boot

목록 보기
4/6

Annotation

Annotation 이란?

Annotation은 주석이라는 의미이며, 인터페이스를 기반으로 한 문법입니다.
주석처럼 코드에 달아 클래스에 특별한 의미를 부여 또는 기능을 주입할 수 있습니다.

Annotation 종류

@ComponentScan

@Componentscan 어노테이션은 @Component 어노테이션 및 stereotype(@Service, @Repository, @Controller) 어노테이션이 부여된 클래스들을 자동으로 Scan하여 Bean으로 등록해주는 역할을 하는 어노테이션입니다.

SpringBoot를 사용한다면 별도로 설정하지 않는 이상 @ComponentScan을 사용할 필요가 없습니다.
왜냐하면, @SpringBootApplication이 @ComponentScan을 포함하고 있기 때문입니다.

@Component

@Component 어노테이션은 클래스를 Bean으로 등록하기 위한 어노테이션입니다.

@Component(value="beanId")
public class Velog {}

@Component에 value를 사용하면 Bean의 이름을 지정할 수 있습니다.
만약, 추가 정보가 없으면 클래스 이름을 Bean Id로 지정됩니다.

@Bean

@Bean 어노테이션은 외부 라이브러리 등을 Bean으로 등록하기 위한 어노테이션입니다.

@Bean
public ObjectMapper objectMapper() {
	return new ObjectMapper();
}

예로 ObjectMapper라는 외부 라이브러리가 있습니다.


  • 모든 도메인 모델은 @Entity 애노테이션을 달아야 합니다.
  • @Table 애노테이션은 엔터티가 매핑될 테이블의 세부 정보를 제공하는 데 사용됩니다.
  • @Id 애노테이션은 기본 키를 정의하는 데 사용됩니다.
  • @GeneratedValue 애노테이션은 기본 키 생성 전략을 정의하는 데 사용됩니다.
  • @Column 애노테이션은 애노테이션이 있는 필드에 매핑될 열의 속성을 정의하는 데 사용됩니다.
  • @Getter, @Setter 애노태이션은 메소드를 통해 데이터 변경을 위해 사용됩니다.
  • @AllArgsConstructor 과 @NoArgsConstructor 애노테이션은 기본 생성자를 대신 생성해줍니다.
  • @CrossOrigin : CORS 문제를 해결하기 위해 추가.
    CORS란? ( https://inpa.tistory.com/entry/WEB-📚-CORS-💯-정리-해결-방법-👏 )
profile
반갑습니당~😄

0개의 댓글