2016-04-30 6 views
1

私は春のセキュリティの内部を学んでいたと私はWebSecurityConfigurationで、次の二つの方法が見つかりました:私は{@autowiredWebSecurityConfigurersIgnoreParents.getWebSecurityConfigurers()}を理解するように、奇妙な春の使い方

public void setFilterChainProxySecurityConfigurer(
     ObjectPostProcessor<Object> objectPostProcessor, 
     @Value("#{@autowiredWebSecurityConfigurersIgnoreParents.getWebSecurityConfigurers()}") List<SecurityConfigurer<Filter, WebSecurity>> webSecurityConfigurers) 
     throws Exception { 
      ... 
     } 

@Bean 
public AutowiredWebSecurityConfigurersIgnoreParents autowiredWebSecurityConfigurersIgnoreParents(
     ConfigurableListableBeanFactory beanFactory) { 
      ... 
     } 

を最初のメソッドは、メソッドautowiredWebSecurityConfigurersIgnoreParentsを呼び出します。しかし、その方法はパラメータConfigurableListableBeanFactory beanFactoryを持っています。このパラメータはどのように渡されますか?

答えて

1

EL-expressionが間違っていると、autowiredWebSecurityConfigurersIgnoreParentsから実際にgetWebSecurityConfigurersが呼び出されます。

方法AutowiredWebSecurityConfigurersIgnoreParents autowiredWebSecurityConfigurersIgnoreParents(ConfigurableListableBeanFactory beanFactory)は完璧な答えである豆autowiredWebSecurityConfigurersIgnoreParents

+0

Thxをし、作成するものです。また、ConfigurableListableBeanFactory beanFactoryがautowiredWebSecurityConfigurersIgnoreParents Beanの作成のために渡される方法についても教えてください。 autowiredアノテーションは表示されません。 –

+0

私は分かりませんが、 'ConfigurableListableBeanFactory'はスプリング内部のIOC内部であるため、春は引数を解決すると仮定します。多分あなたはそれを新しい質問として尋ねることができます –