Bean
[Spring] 스프링의 IoC
👉 지금까지 대표적인 IoC 프레임워크인 스프링 없이도 IoC 개념을 적용했었는데, 이번에는 스프링 프레임워크를 사용해 IoC 스타일의 애플리케이션을 설계해보겠습니다. 스프링의 IoC 핵심은 빈 팩토리(Bean Factroy)와 애플리케이션 컨텍스트(Application Context)가 있습니다. 스프링에서는 빈의 생성과 관계설정 같은 제어를 담당하는 IoC 오브젝트를 빈 팩토리라 부릅니다. 그리고 이를 좀 더 확장한 것을 애플리케이션 컨텍스트라고 부릅니다. 이 둘의 차이점은 빈팩토리는 빈을 생성하고 관계를 설정하는 IoC의 기본 기능에 초점을 맞췄고, 애플리케이션 컨텍스트는 애플리케이션 전반에 걸쳐 모든 구성요소의 제어 작업을 담당하는 IoC엔진입니다. 💡 빈(Bean)이란? 스프링이 제어권을 가지고..
[Spring] @Bean 과 @Component 차이
🧐 @Bean 과 @Component 사용하는 이유? IoC Container는 @Configuration, @Bean, @Component, @Repository, @Service, @Controller가 달린 클래스를 감지하며 빈을 가져오기 위해 빈 스캐닝을 합니다. 대표적으로 빈으로 사용 할 수 있도록 해주는 어노테이션으로 @Bean과 @Component이 있다. (@Configuration은 구성클래스를 만들 때 사용, @Repository, @Service, @Controller는 @Component에 속해있다.) 😊@Bean vs @Component 👉 @Bean @Bean은 개발자가 직접 제어가 불가능한 외부 라이브러리를 사용할 때 사용한다. @Configuration을 선언한 클래스 내부에..
[Spring] POJO 구성해보기
🧐 자바로 POJO 구성해보기 (1) POJO클래스를 설계할 때 @Configuration, @Bean을 붙여 자바 구성 클래스를 만들거나, @Component, @Repository, @Service, @Controller를 붙여 자바 컴포넌트를 구성해야합니다. IoC 컨테이너는 위와 같이 애너테이션을 붙인 자바 클래스를 스캐닝하여 POJO 인스턴스를 구성해줄 수 있습니다. 기본적인 POJO를 설계할 때의 원리는, 아래 그림과 같이 Main Class에서 IoC 컨테이너를 생성해주고, 구성 클래스에서 생성된 빈 인스턴스를 가져오는 원리입니다. POJO를 사용하기 위해 다목적 시퀀스 생성기 애플리케이션을 만들어보면, prefix, suffix, initial 세 프로퍼티를 지닌 SequenceGenera..