- 의존성 주입이란?
- 클래스 내부에서 필요한 객체를 직접 생성하지 않고, 외부에서 필요한 객체를 주입한다.
- 의존관계를 외부에서 주입 해주는것 같다고 해서 의존성 주입(DI)라고 한다.
스프링 컨테이너가 빈을 생성하는 과정
1.컴포넌트를 스캔한다.
2.컨테이너에 인스턴스를 생성하고 저장한다
3.객체간의 의존관계를 파악하여 객체를 주입한다
- 애노테이션이란?
• 아래와 같이 @기호로 시작하는 것을 애노테이션라고 한다.
• Java가 제공하거나, 사용자가 정의해서 사용할 수 있다.
애노테이션 기능
• 어플리케이션 실행시 특정기능을 실행한다
• 컴파일러가 코드의 문법 에러를 체크한다
- 자주 사용하는 어노테이션
스프링 관련 어노테이션 | 설명 | 위치 |
@Component | 컴포넌트가 붙은 클래스를 찾으면 스프링 컨테이너에 인스턴스로 등록한다 | 클래스 |
@Autowired | 스프링 컨테이너는 관리하고 있는 객체 중에에서 @Autowired 어노테이션이 붙은 필드에 맞는 객체를 찾아내어 주입한다 | 필드 |
테스트 관련 어노테이션 | 설명 | 위치 |
@SpringBootTest | 스프링 테스트 환경을 실행한다. 테스트를 위해 임시로 어플리케이션을 실행한다 |
클래스 |
@Test | 해당메소드를 단위테스트로 설정한다 | 메소드 |
롬복 관련 어노테이션 | 설명 | 위치 |
@Getter | Getter 메소드를 생성한다 | 클래스 |
@Setter | Setter 메소드를 생성한다 | 클래스 |
@NoArgsConstructor | 디폴트 생성자 메소드를 생성한다 | 클래스 |
@AllArgsConstructor | 모든 멤버변수를 초기화하는 생성자 메소드를 생성한다 | 클래스 |
@ToString | 객체의 정보를 반환하는 toString 메소드를 생성한다 | 클래스 |
@Data | 위 메소드를 모두 생성한다 | 클래스 |
@Log4j2 | 로그객체를 생성하여 로깅 메소드를 사용할수 있다 | 클래스 |
@Slf4j | 로그객체를 생성하여 로깅 메소드를 사용할수 있다 | 클래스 |
'WEB > Spring' 카테고리의 다른 글
컨트롤러의 파라미터 수집 (0) | 2022.12.08 |
---|---|
Controller-GET, POST, DELETE, PUT (0) | 2022.12.08 |
MVC 패턴 (0) | 2022.12.08 |
스프링 프레임워크 (0) | 2022.12.08 |
Spring 시작하기-설치, 프로젝트 생성, etc (0) | 2022.12.08 |