스프링 5

스프링 핵심 원리 기본편 강의 - ComponentScan과 의존 관계 자동 주입

@ComponentScan 자동으로 @Component가 붙은 컴포넌트를 해당 빈 등록을 해준다. (싱글톤) 빈 이름은 기본전략은 MemberServiceImpl class -> memberServiceImpl로 앞의 글자만 소문자로 바꿔서 등록 해준다. 이름을 수정 할 수 있음. 15:47:41.702 [Test worker] DEBUG org.springframework.context.annotation.AnnotationConfigApplicationContext - Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@d049e53 15:47:41.708 [Test worker] DEBUG org.s..

스프링 핵심 원리 기본편 강의 - Bean Definition

BeanDefinition 스프링은 어떻게 이런 다양한 설정 형식을 지원하는 것일까? 그 중심에는 BeanDefinition 이라는 추상화가 있다. BeanDefinition 정보 BeanClassName: 생성할 빈의 클래스 명(자바 설정 처럼 팩토리 역할의 빈을 사용하면 없음) factoryBeanName: 팩토리 역할의 빈을 사용할 경우 이름, 예) appConfig factoryMethodName: 빈을 생성할 팩토리 메서드 지정, 예) memberService Scope: 싱글톤(기본값) lazyInit: 스프링 컨테이너를 생성할 때 빈을 생성하는 것이 아니라, 실제 빈을 사용할 때 까지 최대한 생성을 지연처리 하는지 여부 InitMethodName: 빈을 생성하고, 의존관계를 적용한 뒤에 호출..

[Spring framework] 공부를 해보자 3탄

Spring framework - 개념 스프링에서 스프링이 제어권을 가지고 직접 만들고, 관계를 부여하는 오브젝트를 Bean이라 부른다. 빈 생성과 관계설정 같은 제어를 담당하는 IoC 오브젝트를 빈 팩토리라 부른다. 좀 더 확장한 어플리케이션 컨텍스트를 주로 사용한다. 어플리케이션 컨텍스트는 별도의 정보를 참고해서 빈의 생성, 관계설정등의 제어 작업을 총괄하는 역할을 한다. 빈 팩토리 스프링의 IoC를 담당하는 핵심 컨테이너이며, 빈 등록, 생성, 조회, 반환 및 부가적인 빈을 관리하는 기능을 담당한다. 어플리케이션 컨텍스트 빈 팩토리를 확장한 IoC 컨테이너다. 빈 팩토리와 빈과 관련한 기능을 하는 것 이외에 스프링이 제공하는 각종 부가 기능들을 추가 제공한다. 스프링이 싱글톤으로 빈을 생성하는 이유..

토비 스프링 공부 - 자바빈

자바빈 원래 비주얼 툴에서 조작 가능한 컴포넌트를 말했다. 자바의 주력 플랫폼이 웹 기반의 엔터프라이즈 방식으로 바뀌면서 비주얼 컴포넌트로서 자바빈은 인기가 없어졌지만 JSP 빈, EJB와 같은 표준 기술과 자바빈의 스타일의 오브젝트를 사용하는 오픈소스 기술을 통해 계속 이어져왔다. 하지만 현재 자바빈은 두 가지 관례를 따라 만들어진 오브젝트를 가리킨다. 1. 디폴트 생성자 자바빈은 파라미터가 없는 디폴트 생성자를 갖고 있어야 한다. 툴이나 프레임워크에서 리플렉션을 이용해 오브젝트를 생성하기 때문이다. 2. 프로퍼티 자바빈이 노출하는 이름을 가진 속성을 프로퍼티라 한다. 프로퍼티는 SET으로 시작하는 수정자 메소드/접근자 메소드(getter/setter)를 이용해 수정 또는 조회 할 수 있다. 리팩토링 ..

Spring에서 Junit 관련 기초 정보

Junit이 테스트를 수행하는 방식 테스트 클래스에서 @Test가 붙은 public이고, void형이며 파라미터가 없는 테스트 메소드를 모두찾는다.테스트 클래스의 오브젝트를 하나 만든다.@Before가 붙은 메소드가 있으면 실행한다.@Test가 붙은 메소드를 하나 호출하고, 테스트 결과를 저장해둔다.@After가 붙은 메소드가 있으면 실행한다.나머지 테스트 메소드에 대해 2~5번을 반복한다.모든 테스트 결과를 종합해서 돌려준다. 실제로는 더 복잡하지만, 간단하게 말하면 위와 같이 동작한다고 말 할 수 있다. 테스트 클래스 내에 테스트 메소드가 2개 있다면, 총 2개의 오브젝트를 만든다. 즉, 테스트 메소드를 실행할 때마다 테스트 클래스의 오브젝트를 만든다. 어플리케이션 컨텍스트를 딱 한 번만 생성하고자 ..

반응형