2014-08-30 3 views
13

Welcher ist der Standardbereich eines Spring 4@Service?Spring Service Standardbereich

Es ist sinnvoll, eine Service-Implementierung zu entwerfen, um einige Informationen zu speichern, zu den aktuell protokolliert teilnehmerbezogenen (entsprechend die aktuellen HTTP-Sitzung), durch Klassenattribut (auch den final Modifikator unter Verwendung)

Antwort

20

Welcher ist der Standardbereich eines Spring 4 @Service?

Der Standardbereich ist Singleton

Es ist sinnvoll, eine Service-Implementierung zu entwerfen, um einige Informationen zu speichern, zu den aktuell protokolliert teilnehmerbezogenen (entsprechend die aktuellen HTTP-Sitzung)

Ja. In diesem Fall muss der Dienst den Bereich "Sitzung" haben. Siehe http://docs.spring.io/spring/docs/current/spring-framework-reference/html/beans.html#beans-factory-scopes-other

+0

Daher sollte ich den Dienst als '@Scope (" Sitzung ") annotieren, oder? – vdenotaris

+1

Sie sollten '' Scope (Wert = WebApplicationContext.SCOPE_SESSION, proxyMode = ScopedProxyMode.TARGET_CLASS) '' oder '@Scope (Wert = WebApplicationContext.SCOPE_SESSION, proxyMode = ScopedProxyMode.INTERFACES)' verwenden, abhängig von Ihrem bevorzugten Proxy-Modus, so dass der Session-Bean kann überall injiziert werden. –

+1

Hallo, kannst du mir sagen, was war der Standardbereich für Spring 3 @service? Ich habe ein Problem mit verschiedenen Benutzersitzungen, die die gleichen Werte anzeigen. –

Verwandte Themen