본문 바로가기
반응형

Framework & Lib & API23

스프링 빈 생성 과정 분석 [3] - BeanFactoryPostProcessor, BeanPostProcessor 이전 포스팅에서 BeanDefinitionRegsitry와 SingletonRegistry에 관련하여 빈 생성과정에 대해 설명하였다. 이번 포스팅에서는 아래 굵은 글씨로 밑줄친 내용에 대해 알아볼 것이다.      1) 생성할 빈의 BeanDefition 정의     2) BeanFactoryPostProcessor가 BeanDefition을 BeanDefinitionResitry에 저장     3) BeanDefition을 바탕으로 빈 인스턴스화 (스프링 default 빈 생성 방식은 싱글톤)          3-1) 인스턴스화 이후 BeanPostProcessor가 빈 인스턴스의 후처리 작업 진행     4) 빈 인스턴스를 SingletonBeanRegistry에 저장 2)번 내용 ‘.. 2024. 4. 20.
스프링 빈 생성 과정 분석 [2] - BeanDefinitionRegistry, SingletonBeanRegistry BeanDefinitionRegistry, SingletonBeanRegistry1. 빈 생성 과정스프링 빈 생성과정에 대해 간단히 소개 하겠다.      1) 생성할 빈의 BeanDefition 정의     2) BeanDefition을 BeanDefinitionResitry에 저장     3) BeanDefition을 바탕으로 빈을 인스턴스화 (스프링 default 빈 생성 방식은 싱글톤)     4) 빈 인스턴스를 SingletonBeanRegistry에 저장 BeanDefition과 빈 인스턴스는 1대1 관계이다.두 저장소는 모두 Map타입이고 key값으로 빈의 이름이 사용된다.BeanDefinitionRegistry와 SingletonBeanResgistry가 별도의 공간임에.. 2024. 4. 20.
스프링 빈 생성 과정 분석 [1] - IOC 컨텍스트(BeanFactory) ApplicationContext(IOC 컨텍스트) 소개IOC (Inversion of Control, 제어의 역전)제어의 역전이란 프로그램의 제어 흐름 구조를 바꾸는 것이다.프로그램의 제어권이 개발자가 작성한 코드에 있는 것이 아니라 외부에 존재하는 것을 말한다.프로그램의 제어권에는 객체 생성, 사용할 객체 결정,  객체 주입, 메서드 호출 등 프로그래밍 언어로 표현할 수 있는 모든 행위를 포함한다.  스프링에서는 DI(Dependency Injection)라는 기능을 제공하는데 객체를 생성하고, 의존 타입 객체를 결정하고, 객체를 주입해준다. 이 책임을 수행하는 것이 ApplicationContext이다.  ApplicationContext가 객체 생성과 의존객체를 주입해주기 때문.. 2024. 4. 20.
코틀린 JPA Entity 작성법 자바에서 Entity를 작성하다 코틀린에서 Entity를 작성하려고 하면 자바와 다른 방식으로 인해 Entity를 작성하는 것이 쉽지가 않다. 클래스 작성 키워드, 변수 선언 키워드, 생성자 선언 방식, 디폴트값 정의 등 자바에 존재하지 않거나 다른 방식으로 인해 Entity 클래스 설계시 고려해야할 부분이 많다. 코틀린에서 제공하는 다양한 방식으로 클래스를 설계하며 각 클래스가 Entity의 조건에 맞는지 도메인 객체를 잘 표현하는지 확인해보며 Best Practice Entity 설계 패턴을 찾아나가보도록 하겠다. 우선 Entity의 조건에 대해 알아보겠다.(https://docs.oracle.com/javaee/5/tutorial/doc/bnbqa.html) 클래스의 접근 지정자는 public 또는.. 2024. 3. 13.
반응형