[SPRING] 봄 콩 범위
SPRING봄 콩 범위
누군가가 스프링 빈에있는 스코프가 무엇인지를 설명 할 수 있습니까? 저는 항상 '프로토 타입'을 사용했습니다. 그러나 그 대신에 다른 매개 변수를 넣을 수 있습니까?
내가 말하는 것에 대한 예
<bean id="customerInfoController" class="com.action.customer.Controller" scope="prototype">
<property name="accountDao" ref="accountDao"/>
<property name="utilityDao" ref="utilityDao"/>
<property name="account_usageDao" ref="account_usageDao"/>
</bean>
해결법
-
==============================
1.봄 사양에서 지원되는 다섯 가지 유형의 bean 범위가 있습니다.
봄 사양에서 지원되는 다섯 가지 유형의 bean 범위가 있습니다.
* default는
태그에 명시 적으로 제공된 범위가 없을 때를 의미합니다. 여기에 대한 자세한 내용은 http://static.springsource.org/spring/docs/3.0.0.M3/reference/html/ch04s04.html을 참조하십시오. -
==============================
2.Spring에서 빈 범위는 Spring 컨테이너에서 호출자에게 반환되어야하는 bean 인스턴스 유형을 결정하는 데 사용됩니다.
Spring에서 빈 범위는 Spring 컨테이너에서 호출자에게 반환되어야하는 bean 인스턴스 유형을 결정하는 데 사용됩니다.
5 가지 유형의 bean 범위가 지원됩니다.
대부분의 경우 Spring의 핵심 범위 인 싱글 톤과 프로토 타입 만 처리 할 수 있으며 기본 범위는 싱글 톤입니다.
-
==============================
3.각 범위에 대한 자세한 설명은 Spring bean 범위에서 찾을 수 있습니다. 아래는 요약입니다.
각 범위에 대한 자세한 설명은 Spring bean 범위에서 찾을 수 있습니다. 아래는 요약입니다.
싱글 톤 - (기본값) 단일 Bean 정의를 Spring IoC 컨테이너 당 하나의 객체 인스턴스로 범위 지정한다.
prototype - 하나의 bean 정의를 임의의 개수의 객체 인스턴스로 확장합니다.
request - 단일 bean 정의를 단일 HTTP 요청의 라이프 사이클 범위로 지정합니다. 즉, 각 HTTP 요청에는 단일 Bean 정의의 뒷면에서 작성된 Bean의 자체 인스턴스가 있습니다. 웹 인식 Spring ApplicationContext의 컨텍스트에서만 유효합니다.
session - 단일 Bean 정의를 HTTP 세션의 라이프 사이클 범위로 확장합니다. 웹 인식 Spring ApplicationContext의 컨텍스트에서만 유효합니다.
global session - 단일 bean 정의를 전역 HTTP 세션의 라이프 사이클 범위로 확장합니다. 일반적으로 포틀릿 컨텍스트에서 사용되는 경우에만 유효합니다. 웹 인식 Spring ApplicationContext의 컨텍스트에서만 유효합니다.
-
==============================
4.Spring 문서는 다음과 같은 표준 범위를 기술한다.
Spring 문서는 다음과 같은 표준 범위를 기술한다.
추가 사용자 지정 범위는 CustomScopeConfigurer를 사용하여 만들고 구성 할 수도 있습니다. Spring Webflow가 추가 한 플로우 스코프의 예가 있습니다.
그건 그렇고, 당신은 항상 내가 이상한 것을 발견 한 프로토 타입을 사용했다고 주장합니다. 표준 범위는 싱글 톤이며 응용 프로그램 개발시 프로토 타입 범위가 거의 필요하지 않습니다. 아마 이것 좀 봐봐.
-
==============================
5.Spring 문서에서 언급했듯이 Spring은 6 개의 범위를 지원합니다.이 중 4 개는 웹 인식 ApplicationContext를 사용하는 경우에만 사용할 수 있습니다.
Spring 문서에서 언급했듯이 Spring은 6 개의 범위를 지원합니다.이 중 4 개는 웹 인식 ApplicationContext를 사용하는 경우에만 사용할 수 있습니다.
-
==============================
6.프로토 타입 bean 정보 :
프로토 타입 bean 정보 :
ref : https://docs.spring.io/spring/docs/3.0.0.M3/reference/html/ch04s04.html#beans-factory-scopes-prototype
-
==============================
7.Spring-Cloud-Config의 문서에 따르면 기존 5 개 옆에 하나의 추가 범위가있다. @RefreshScope입니다.
Spring-Cloud-Config의 문서에 따르면 기존 5 개 옆에 하나의 추가 범위가있다. @RefreshScope입니다.
다음은 RefreshScope에 대한 간단한 설명입니다.
from https://stackoverflow.com/questions/17599216/spring-bean-scopes by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 간단한 봄 보안 예제를 찾고 있습니다 [닫힌] (0) | 2018.12.29 |
---|---|
[SPRING] Spring 주석의 차이점 (0) | 2018.12.29 |
[SPRING] Spring Security @ PreAuthorize / @ PostAuthorize 어노테이션에서 커스텀 표현식을 사용하는 방법 (0) | 2018.12.29 |
[SPRING] 세션에서 Spring 저장 객체 (0) | 2018.12.29 |
[SPRING] Spring RestTemplate을 사용하여 Https Rest Service에 액세스 (0) | 2018.12.29 |