2016-10-12 2 views
1

J'essaie d'utiliser FilterRegistrationBean pour enregistrer un filtre Servlet dans le projet Spring Boot, mais je ne sais pas comment définir un nom pour ce filtre, parce que je n'ai pas défini le nom du filtre, Spring va automatiquement donner une base de nom sur le nom de classe de ce filtre. Par exemple, le filtre ci-dessous donnera un nom "someFilter". Alors, comment puis-je définir un nom pour ce filtre? méthodeComment définir le nom du filtre de servlet lors de l'ajout d'un filtre de servlet au démarrage du ressort?

@Bean 
public FilterRegistrationBean filterRegistrationBean() { 
    FilterRegistrationBean registrationBean = new FilterRegistrationBean(); 
    SomeFilter filter = new SomeFilter(); 

    registrationBean.setFilter(filter); 
    registrationBean.addUrlPatterns("/*"); 
    registrationBean.setDispatcherTypes(DispatcherType.REQUEST, DispatcherType.INCLUDE, DispatcherType.FORWARD, DispatcherType.ERROR); 
    return registrationBean; 
} 

de registrationBean.setName() peut faire le travail, thx.

+1

Que diriez-vous de lire [la documentation] (http://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/web/servlet/RegistrationBean.html#setName- java.lang.String -) ... –

+0

@ M. La méthode setName() fonctionne, merci. – Leonard

Répondre

1

Non seulement pour le filtre, vous pouvez définir le nom pour tout grain de printemps comme ci-dessous.

@Bean(name="bean_name_which_i_want")