스프링 빈 설정하는 방법 (XML, @Configuration, @Component)
Backend/Spring2023. 12. 17. 05:25스프링 빈 설정하는 방법 (XML, @Configuration, @Component)

스프링 빈 (Bean) 이란? POJO(Plain Old Java Object)로써 스프링 컨테이너에 의해 관리되는 객체이다. - 주요 구성 요소 클래스(class) : 빈은 일반적으로 자바 클래스로 표현된다. id, name : 빈을 식별하는데 사용됨 scope : 스프링 빈의 생존 기간 ( bean 생성 방법이기도 함, singleton, prototype 등) constructor-arg : 빈 생성시 생성자에 전달할 파라미터 property : 빈 생성 시 setter 메서드를 통해 전달할 인수 Lifecycle Callback : 빈의 생명 주기 관리를 위해 초기화와 소멸 단계에서 실행 되는 메서드를 정의함 초기화 콜백 - 빈이 생성되고, 빈의 의존관계 주입이 완료된 후 호출 소멸전 콜백 - 빈..

스프링의 싱글톤 (+ 싱글톤 레지스트리란?)
Backend/Spring2023. 12. 11. 09:30스프링의 싱글톤 (+ 싱글톤 레지스트리란?)

🔎 스프링에서 싱글톤을 사용하는 이유 앞선 포스팅에서 스프링 컨테이너가 의존관계를 주입할 객체를 생성하고 관리한다고 했었다. 그렇다면 대규모 트래픽 처리를 요구하는 애플리케이션에서 매 요청마다 새로운 빈(Bean)을 만든다고 생각해보자. 이 애플리케이션에 1초에 1천번의 요청이 온다고 하면 1분에는 6만번의 새로운 객체가 생성되는 현상이 발생하게 된다. 이는 성능에 부하가 생길 수 있다. 위와 같은 상황처럼 대규모 트래픽을 처리할 수 있게 스프링에서는 이미 만들어진 객체(1개)를 공유해서 효율적으로 사용할 수 있게 해준다. ❔ 어떻게 객체 인스턴스를 하나만 만들까? 그렇다면 스프링에서는 어떻게 하나의 인스턴스만 생성되도록 해줄까? 기본적으로 생각할 수 있는 싱글톤 패턴을 Java언어로 구현하는 방법을 생..

DI (Dependency Injection, 의존관계 주입) 이란? (+ 필요성)
Backend/Spring2023. 12. 10. 08:58DI (Dependency Injection, 의존관계 주입) 이란? (+ 필요성)

Series 1. IoC(제어의 역전)/ DI(의존관계 주입) 용어 정리 2. DI (Dependency Injection, 의존관계 주입) 이란? 제어의 역전/ 의존관계 주입을 간단히 정리한 거에 이어, DI (의존관계 주입)가 스프링에서 쓰이는 이유, 특징에 대해 정리하는 시간. 스프링은 자바 언어 기반 프레임워크로 좋은 객체 지향 애플리케이션을 개발할 수 있게 도와주는 도구라고 할 수 있다. 이것을 가능하게 해 주는 객체 지향 프로그래밍의 핵심은 '다형성'에 있다. 다형성이 무엇인지 간단하게 정리해 보자. (객체 지향 프로그래밍과 다형성에 대한 자세한 내용 다른 포스팅에서 정리하도록 하겠다.) 🔍 다형성 다형성은 이름 그대로 객체의 속성이나 기능(메소드)이 여러 가지 다른 형태로 가질 수 있는 것을..

image