CoreTechnician3 SpringFrameWork CoreTechnition_section1_5부 Environment Profile 기능과 Property 기능 Profile 기능 ApplicationContext는 Environment 상속 받고 있어 getEnvironment()를 사용할 수 있다. 가장 먼저 Environment 무언인가? 환경이라는 뜻으로 해석 할 수 있는데 말 그대로 각기 다른 환경마다 다르게 적용할 수 있는 빈들을 설정하는 것입니다. 예를 들어 테스트 환경에서 쓰이는 빈들 알파,베타,감마 버젼에 사용되는 빈들 또는 특정환경에서만 사용할 수 있게 빈들을 사용하는 것입니다.. 그리하여 여러 빈들의 묶음을 Profile 라고 합니다. 먼저 BookRepository 라는 인터페이스를 만들고 TestConfiguration 라는 클래스를 만들고 작성합니다. @profile(" p.. Spring/Spring_CoreTechnologies 2020. 11. 18. SpringFrameWork CoreTechnition_section1_4부 Scope of Bean 스코프 : 모든 빈들이 가지고 있는 것. (대표적으로 싱글톤(default)과 프로토타입이 있음.) 싱글톤 : 애플리케이션 전반에 걸쳐 해당 빈의 인스턴스가 오직 하나인 것. 프로토타입 : 해당 인스턴스가 계속 새로운 인스턴스 객체 생성. (스레드에 사용될 것같다.) *주의* 스레드세이프한 방법으로 코딩해야 합니다. 싱글톤은 프로퍼티가 공유가 됩니다. 여러 곳에서 고치면 스레드 세이프 보장받지 않습니다.(멀티스레드 환경) 프로토타입이 싱글톤 빈을 참조하면? -> 아무 문제 없음. 프로토타입은 매번 새로운 인스턴스이지만 싱글톤은 매번 같은 객체니깐 상관은 없습니다! 싱글톤 빈이 프로토타입 빈을 참조하면? -> 안됨. 프로토타입의 스코프가 변경되지 않는 문제가 발생. 바뀌지 않습니다.. Spring/Spring_CoreTechnologies 2020. 11. 17. SpringFrameWork CoreTechnition_section1_3부 @Component와 컴포넌트스캔. 주요기능 스캔 위치(Basepackages 위치) 설정.(범위 : 기본적으로 같은 패키지 안에 있는 빈들은 가능 외부는 x. 따로 무엇인가 필요하다.) 필터 : 어떤 어노테이션 스캘 할지 또는 안 할지. => 어디서 부터 어디까지 어떤 것을 걸러낼 것인지가 중요. @Component : Bean 등록하는 것. Repository Service Controller Configuration * 단점이 있다면 ApplicationContext에서는 Singleton은 초기에 생성되는데, 양이 많을 시 구동 시간에 오래 걸릴 수가 있습니다. 하지만 구동 타임에서만 성능이 떨어지지만 그 후에 추가로 빈을 생성하는 데는 문제가 되지 않는다. 그래서 Function을 사용한 빈 등.. Spring/Spring_CoreTechnologies 2020. 11. 17. 이전 1 다음