2010-01-05 7 views
6

Je suis nouveau au printemps MVC. Je cherche une place dans mon application de printemps mvc où je peux initialiser toutes sortes de choses dans l'application. habituellement, je l'ai fait dans la méthode init() de ma servlet principale mais maintenant le servlet du répartiteur est de spring et je ne peux pas surcharger la fonction init.printemps initialisation de servlets mvc

Quelle est la meilleure pratique?

Merci.

Répondre

13

Utilisez un ServletContextListener et définir dans web.xml:

<listener> 
    <listener-class>com.company.YourListenerClass</listener-class> 
</listener> 

(vous faire une classe qui implémente ServletContextListener et mettre en œuvre la méthode contextInitialized(), où vous placez votre code d'initialisation)

+0

Merci cela fonctionne. Est-ce une pratique courante pour l'initialisation? – rperez

+0

oui, c'est. L'interface est dans l'API de servlet et est conçue exactement à cette fin. – Bozho

0

Tous les haricots peuvent avoir un init-méthode. Voir le documentation. Je suppose que la meilleure pratique sera d'utiliser cette méthode pour chaque haricot que vous définissez. Un haricot peut avoir des références à d'autres haricots si cela est nécessaire.