Spring Security - XML与Java配置

时间:2014-03-04 14:29:09

标签: spring

我刚学习Spring Security,很多Spring的文档似乎都使用基于Java的bean配置(而不是XML)。总的来说,这似乎是他们很多项目的进展方式。但是,他们的部分文档往往从Java配置开始,然后在之后切换到XML配置。我在一个文档(http://docs.spring.io/spring-security/site/docs/3.2.0.RELEASE/reference/htmlsingle/)中找到了一个简介,说明了以下内容:

  

Spring Security的Java配置不会公开它配置的每个对象的每个属性。这简化了大多数用户的配置。 。 。 。虽然有充分的理由不直接公开每个属性,但用户可能仍需要更高级的配置选项。为了解决这个问题,Spring Security引入了ObjectPostProcessor的概念,该概念可用于修改或替换Java配置创建的许多Object实例。

可以使用Java配置完成XML配置中可以完成的所有操作吗? Spring社区在配置风格方面是否有明确的方向?

2 个答案:

答案 0 :(得分:2)

您可以选择基于java或基于xml的配置。选择一个,不要混合使用。但是不要忘记使用基于注释的配置。您只需要使用@ component,@ service注释spring托管组件你不需要在xml或java类中使用那个bean defenition。

 <context:annotation-config/>
 <context:component-scan base-package="com.package"/>

@Configuration
@ComponentScan({"com.foo.bar", "org.foo.bar"})

http://docs.spring.io/spring-security/site/docs/3.2.0.RC2/reference/htmlsingle/#jc

答案 1 :(得分:0)

您可以使用基于Java或XML。但有一件事 在较新版本的Spring中,基于xml的配置的使用正在减少。 像@EnableAutoConfiguration标签一样...... 有了这个,Web应用程序甚至不需要任何XML conf甚至web.xml