Bean 의 생성전략 Request 생성 전략은 HTTP 요청 한 건당 새로운 빈 인스턴스를 생성하는 스코프입니다 즉 각각의 HTTP 요청이 들어올 때마다 새로운 bean 이 생성이 되면 해당 요청이 완료되면 이 Bean 은 소멸이 됩니다 이때 Bean의 유지시간은 HTTP 요청이 끝날 때까지 값이 유지가 됩니다 이때는 IoC 와 서블릿 컨테이너의 동...
Spring Ioc 와 Bean Scope ProtoType
Bean 생성전략 Spring 은 bean의 생성 전략 기본은 싱글톤 전략인데 이 중에서도 다른 전략을 선택할 수 있습니다 그중에서 프로토타입 전략을 사용할 수 있습니다 프로토타입 (ProtoType Strategy) 프로토타입은 매번 bean 을 요청할 때마다 새로운 인스턴스를 생성하여 반환합니다 싱글톤하고는 다르게 bean의 생성 전략을 지정을 ...
Spring Ioc 와 Bean Scope Singleton
Bean 의 생성전략 기본적으로 Spring의 Bean의 생성 전략은 싱글톤입니다 싱글톤 (Singleton Strategy) 우리는 앞에서 계속해서 Bean으로 생성된 것들은 IoC 컨테이너가 관리한다는 말을 계속 보고 있다 이때 이 IoC는 이 bean의 전략을 보고 어떻게 bean 을 만들지 전략을 만들게 되는데 이 기본적인 전략은 싱글톤입니다...
Spring Ioc @Primary ,@Qualifier
@Primary spring 은 기본적으로 동일한 타입의 bean 을 생성하지 않습니다 예를 들어서 다음과 같은 소스가 있다고 생각을 해봅시다 public interface Printer { void print(); } ============================== @Component public class InkjetPrint...
Spring Ioc @ComponentScan
@ComponentScan 사실 앞에서 런타임 시 자동으로 bean 을 찾아서 등록해 준다고 했지만 실제로는 @ComponentScan 어노테이션 기반으로 자동으로 등록이 된다 이 어노테이션은 범위 안에 있는 패키지들을 스캔해서 이들 중에서 bean으로 등록될만한 것들을 찾아서 bean 을 만들고 IoC 컨테이너에 넣는 역할을 하게 됩니다 즉 우리가 ...
Spring Ioc @Component
우리는 앞에서 xml 방식이 아닌 어노테이션 방식으로 설정 파일을 만들어 IoC 컨테이너에 Bean 을 주입하는 방식에 대해서 기술을 했습니다 이제는 IoC 컨테이너에 직접 넣지도 않고 기동 시 알아서 읽는 방법에 대해서 기술하겠습니다 ApplicationContext 는 없어도 된다 ApplicationContext applicationCont...
Spring Ioc @Bean
우리는 앞에서 xml 을 통한 bean 정의서를 만들고 그것을 IoC 컨테이너에 주입하는 방식으로 진행을 했다 이때 xml bean 정의서의 가장 큰 단점 중 한 가지는 바로 오타 또는 기타 오류 검증이 안된다는 단점이 있다 다시 앞의 bean.xml 파일을 보자 bean.xml <?xml version="1.0" encoding="UTF-8...
Spring Ioc DI
DI 란 DI는 Dependency Injection으로 IoC 가 추구하는 객체 주입 디자인 패턴 중의 한 가지입니다 그럼 소스를 한번 보면서 살펴보겠습니다 Student public class Student { private String name; private int age; public String getName() { re...
Spring Ioc
IoC 컨테이너 IoC inversion of control 제어의 반전 여기서 말하는 제어는 객체의 생성 주도권을 의미하는데 이전에 우리가 어떤 객체를 만들었는지 생각을 해보자 Student student = new Student(); 우리가 직접 main 메서드 안에 new라는 객체 생성 연산자를 이용해서 생성자를 호출하여 객체를 만들었다 ...
JAVA try - catch
예외 vs 에러 컴퓨터 공학 책에서는 이 둘을 이렇게 나눕니다 예외 - 프로그래밍 단계에서 예상할 수 있는 오류 소스코드의 비정상적인 오류로 발생하는 사건들 이때 소스코드의 적절한 조치로 애플리케이션이 정지되지 않고 계속해서 서비스를 이어갈 수 있음 에러 - 프로그래밍 단계에서 예상할 수 없는 오류 프로그램 문제가 아...