본문 바로가기

서버/스프링15

[Spring] 빈 생명주기 콜백 *본 게시글은 김영한님 스프링 핵심 원리 기본편을 보고 이해한 내용을 바탕으로 정리한 글입니다. 스프링 빈 생명주기 스프링 빈은 간단하게 다음과 같은 라이프사이클을 가진다. 1. 객체 생성 2. 의존관계 주입 스프링 빈은 객체를 생성하고 의존관계를 모두 주입하고 나서야 필요한 데이터의 준비가 완료된다. 개발자가 의존관계 주입이 모두 완료된 시점을 어떻게 알 수 있을까? 스프링은 의존관계 주입이 완료되면 스프링 빈에게 콜백 메서드를 통해서 초기화 시점을 알려주는 다양한 기능을 제공한다. 스프링 빈의 이벤트 라이프사이클 1. 스프링 컨테이너 생성 2. 스프링 빈 생성 3. 의존관계 주입 4. 생성 후 콜백 5. 사용 6. 소멸 전 콜백 7. 종료 *참고 생성자는 파라미터를 받고, 메모리를 할당해서 객체를 생.. 2022. 8. 28.
[Spring] 의존관계 자동 주입 @Autowired *본 게시글은 김영한님 스프링 핵심 원리 기본편을 보고 이해한 내용을 바탕으로 정리한 글입니다. 의존관계 자동 주입 스프링에서는 객체 간의 의존관계를 자동으로 주입해주는 @Autowired라는 어노테이션을 제공한다. *의존관계 주입(DI란?) [Spring] Ioc(제어의 역전)와 DI(의존성 주입)의 개념과 그 차이 이번에는 스프링 공부를 하는 사람들에겐 필수적이자만 많이들 헷갈려하는 개념인 Ioc ( Inversion of Control ) 와 DI ( Dependency Injection )의 개념에 대하여 알아보겠습니다. Ioc - Inversion of Control 우.. developbear.tistory.com 이를 통해 사용자가 외부에서 직접 의존관계를 주입해주지 않아도, 스프링에서 자동.. 2022. 8. 27.
[Spring] 스프링 컨테이너와 스프링 빈 *본 게시글은 김영한님 스프링 핵심 원리 기본편을 보고 이해한 내용을 바탕으로 정리한 글입니다. 스프링 빈 ( Spring bean ) 스프링 빈은 스프링 컨테이너에 의해 관리되는 자바 객체(POJO)를 의미한다. 스프링 컨테이너에서 싱글톤으로 관리된다. 아래와 같이 어노테이션을 통해 스프링 빈으로 등록할 수 있다. @Bean public SpringBean springBean(){ return new SpringBean(); } 스프링 빈이 싱글톤으로 관리되는 이유는, 서버에 수많은 커넥션이 오게 되고, 이때 마다 똑같은 역할을 하는 객체를 계속 새로 생성하게 된다면 엄청난 자원의 낭비가 된다. 이러한 자원의 낭비를 방지하고자 스프링 컨테이너에 사용할 객체들을 스프링 빈으로 등록하여, 하나만 생성해두고.. 2022. 8. 26.
[Spring] Ioc(제어의 역전)와 DI(의존성 주입)의 개념과 그 차이 이번에는 스프링 공부를 하는 사람들에겐 필수적이자만 많이들 헷갈려하는 개념인 Ioc ( Inversion of Control ) 와 DI ( Dependency Injection )의 개념에 대하여 알아보겠습니다. Ioc - Inversion of Control 우선, 우리 말로 직역하면 '제어의 역전'입니다. 이것이 도대체 무슨 말일까요? 객체지향 프로그래밍을 하는 사람도 이 말을 처음 듣는다면 난해하게 들릴 것입니다. 우리가 Spring이 아닌 메인 메소드를 통해서 작성해왔던 프로그래밍을 생각해봅시다. 객체를 우리는 직접 생성하고, 외부 라이브러리를 프로그래머가 직접 관리하고 하는 등 제어(코드의 흐름)는 결국 우리의 손에 달려있습니다. 그러나 스프링 프레임워크를 사용할 때를 생각해볼까요? 우리는 C.. 2022. 8. 5.