2012-07-01 8 views
8

Di seguito consente la dichiarazione di un fagiolo Singleton nella primavera del 3.0:Dove sono definiti valori validi per @Scope in contesti Web-aware e Portal Spring?

@Bean 
@Scope(BeanDefinition.SCOPE_SINGLETON) 
private void setBean1(Bean1 b1) { 
    this.b1 = b1; 
} 

Ma, BeanDefinition non definire i valori scopi per richiesta, sessione e la sessione globale. Dove sono definiti? Altrimenti, dovrei usare @Scope("request"), @Scope("session") e @Scope("global session")?

risposta

7

È possibile utilizzare i valori letterali stringa se si desidera (sebbene la sessione globale sia "globalSession").

In alternativa, è possibile utilizzare le costanti definite in WebApplicationContext.

6

BeanDefinition ha solo SCOPE_SINGLETON e SCOPE_PROTOTYPE.

Gli altri ambiti, essendo applicabili solo alle applicazioni Web, sono definiti in org.springframework.web.context.WebApplicationContext.

Un utile elenco di costanti può essere trovato nella javadoc per Constant Field values.

Problemi correlati