与XML配置相比,为什么Java Config在spring boot中是有利的?

时间:2017-08-30 00:50:09

标签: java xml spring spring-boot spring-security

我是初学者的新手。我正在使用spring-boot构建一个基于休息的应用程序,并正在使用spring-security设置安全性。我可以使用xml配置或Java配置来设置spring-security。

但是,我在spring-boot文档中找到了以下内容。 https://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-configuration-classes.html

它支持使用Java Config而不是XML配置。 Java配置中的更改需要重新编译。然而,它让我想到为什么文档支持Java Config。

  
      
  1. 配置类Spring Boot支持基于Java的配置。虽然可以使用XML调用SpringApplication.run()   来源,我们一般建议你的主要来源是   @Configuration类。通常是定义main方法的类   作为主要的@Configuration也是一个很好的候选人。
  2.         

    许多Spring配置示例已在Internet上发布   使用XML配置。总是尝试使用等效的   如果可能,基于Java的配置。正在搜索启用*   注释可以是一个很好的起点。

         

    15.1导入其他配置类您无需将所有@Configuration放入单个类中。 @Import注释   可用于导入其他配置类。或者,   您可以使用@ComponentScan自动获取所有Spring   组件,包括@Configuration类。

         

    15.2导入XML配置如果绝对必须使用基于XML的配置,我们建议你仍然从@Configuration开始   类。然后,您可以使用其他@ImportResource批注   加载XML配置文件。

1 个答案:

答案 0 :(得分:5)

有一些优点

  1. Java是类型安全的。如果要配置正确的bean类限定符,编译器将报告问题。

  2. 基于配置的XML可以快速增长。 [是的,我们可以拆分和导入,但仍然

  3. 搜索更简单,重构将是幸福。查找bean定义会容易得多。

  4. 仍然有人喜欢XML配置并继续这样做。

    有关详细信息,请参阅Java configuration advantages Some more reasons