Spring[빈 스코프]
빈 스코프 빈 스코프란? 스프링 컨테이너가 빈(Bean)객체를 생성하고 유지하는 범위를 나타냅니다. 또한, 빈의 스코프는 빈이 언제 생성되고 얼마나 오랫동안 유지되는지에 대한 규칙을 정의합니다. 빈 스코프 등록 방법 다음과 같이 지정이 가능 합니다. 컴포넌트 스캔 자동 등록 @Scope("prototype") @Component public clas...
빈 스코프 빈 스코프란? 스프링 컨테이너가 빈(Bean)객체를 생성하고 유지하는 범위를 나타냅니다. 또한, 빈의 스코프는 빈이 언제 생성되고 얼마나 오랫동안 유지되는지에 대한 규칙을 정의합니다. 빈 스코프 등록 방법 다음과 같이 지정이 가능 합니다. 컴포넌트 스캔 자동 등록 @Scope("prototype") @Component public clas...
빈 생명주기 콜백 방법 2 방법 : @PostConstruct, @PreDestroy 어노테이션을 활용하는 방법입니다. 설정 정보 사용하도록 변경 public class BeanClient { private String url; public BeanClient() { System.out.println("생성자 호출, url = " + url)...
빈 생명주기 콜백 방법 2 방법 : 빈 등록 초기화, 소멸 메서드 지정 설정 정보에 @Bean(initMethod = “init”, destroyMethod = “close”)처럼 초기화, 소멸 메서드를 지정할 수 있습니다. 설정 정보 사용하도록 변경 public class BeanClient { private String url; public...
빈 생명주기 콜백 빈 생명주기 콜백? 스프링 프레임워크에서 빈이라는 객체가 생성, 초기화, 소멸될 때 사용자가 정의한 동작을 실행할 수 있는 메커니즘을 의미합니다. 이는 빈이 생성되는 시점, 초기화되는 시점, 사용되는 시점 등의 다양한 단계에서 사용자가 원하는 작업을 수행할 수 있게 해줍니다. 빈 생명 주기 콜백 시작 데이터베이스 커넥션 풀이나 ...
Lombok Lombok이란? Lombok[롬복]은 자바 프로젝트에서 반복적인 코드를 줄이기 위한 라이브러리 입니다. 주로 Getter, Setter, toString(), equals()등 메소드를 자동으로 생성해주는 어노테이션을 제공하여, 개발자가 더 간결하고 가독성이 높은 코드를 작성할 수 있도록 돕습니다. 적용 방법 Spring.sta...
의존관계 자동 주입 의존관계 자동 주입은 객체 간의 관계를 코드에서 직접 설정하는 번거로움을 덜어주고, 유지 보수성을 향상 시키며 생산성을 높이기 위한 매커니즘입니다. 이를 통해 코드의 모듈성이 강화되고, 객체의 독립성이 증가하여 재사용성이 향상된다는 이점이 있습니다. 또한 스프링 컨테이너 객체간의 의존성을 관리하므로 개발자는 주로 비즈니스 로직에...
컴포넌트 스캔 컴포넌트 스캔이란? 스프링 프레임워크에서 사용되는 기능 중 하나로, 애플리케이션에서 사용할 빈(Bean)들을 찾아서 등록하는 프로세스를 말합니다. 스프링이 관리하는 빈은 주로 @Component 및 그와 관련된 어노테이션을 사용하여 정의합니다. 사용 방법 주로 컴포넌트 스캔은 이름 그대로 @Component 어노테이션이 붙은 클래스...
싱글톤 컨테이너 싱글톤 컨테이너란? 싱글톤 패턴의 문제점을 해결하면서, 객체(빈)를 생성, 관리, 그리고 제공하는 환경을 가지고 있습니다. 스프링의 핵심 기능 중 하나인 제어의 역전(IoC, Inversion of Control)과 의존성 주입(DI, Dependency Injection)을 구현하고 있습니다. 그리고 싱글톤 패턴 적용 없이, 객체...
싱글톤 패턴 싱글톤 패턴이란? 여러가지의 소프트웨어 디자인 패턴중 하나로, 어떠한 클래스가 최대 한 번만 인스턴스를 생성하고, 그 인스턴스에 접근할 수 있는 전역적인 지점을 제공하는 패턴입니다. 즉, 클래스에 있는 생성자가 여러 차례 호출되더라도, 클래스의 인스턴스가 딱 1개만 생성되는 것을 보장하는 디자인 패턴입니다. 그래서 객체 인스턴스...
Spring Container Spring Container? 애플리케이션의 객체(Bean)를 생성, 관리하며 제공하는 환경을 제공하는 역할을 합니다. 즉, 스프링 컨테이너는 애플리케이션 개발자가 작성한 코드에서 객체의 생성 및 관리를 대신 맡아주는 것입니다. 또한 스프링의 핵심 기능 중 하나인 의존성 주입(DI), 제어의 역전(IoC)을 구현하고...