2013-06-12 11 views
5

Ich habe eine Feder mvc Controller und ich möchte es nur in einigen Profilen (zum Beispiel development und test) aktivieren.Feder MVC @Controller und Profile

Ich weiß, dass ich das profile Attribut des Elements beans in der XML-Konfiguration verwenden kann, um den Bereich meiner Beans zu begrenzen, aber ich verwende jetzt praktische Anmerkungen für die Controller.

Kann ich den annotierten Controller irgendwie an ein bestimmtes Profil binden?

Oder muss ich den "alten Weg" (der Implementierung und Deklaration Controller) ohne Anmerkungen verwenden und das beans Element in XML-Konfiguration verwenden?

Werden sich die annotierten Controller gut mit den "alten" mischen?

EDIT: eine andere Art und Weise, die mir in den Sinn kommt, ist das Profil in der Laufzeit von autowired Umwelt Instanz zu überprüfen, aber dies leugnet die Umkehrung der Steuer

+0

Setzen Sie eine andere '' in einem Profil ''. –

+0

Gibt es eine @Profile Annotation? – MikePatel

+0

@MikePatel Ist das eine Frage oder sagst du ihm, dass es eine solche Anmerkung gibt? –

Antwort

6

Ist das, was Sie meinen?

@Controller 
@Profile("test") 
public class CacheController { 
} 

javadoc

+2

Hier ist [Javadoc] (http://static.springsource.org/spring/docs/3.2.x/javadoc-api/org/springframework/context/annotation/Profile.html). –

+1

Ich sollte RTFM das nächste Mal vorsichtiger, dachte ich, dass die Profilannotation nur in Java-basierten Konfiguration und nicht mit den Beans nützlich ist. – Kojotak