java - 使用Spring的@Configuration类的缺点

标签 java spring configuration autowired

我在一家拥有数百万行代码和数百个模块的公司工作。我们的 Spring 配置、所有 bean 定义和连接都是在 XML 文件中定义的。

我发现使用 XML 非常困难 - 它不可调试、类型不安全、需要大量的 ctrl+f 等等。我想改用 @Configuration 类。

除了担心当我们使用代码来配置我们的接线时它可能会被滥用之外,我几乎完全看到了优点。我试图找出除了滥用此功能之外,在采取此步骤时我应该考虑的缺点。

最佳答案

基本上,这确实是一个方便的问题。 Spring 始终确保其所有 API 的集成尽可能简单。您可以迁移到@Configuration并很容易地使用 XML beans,反之亦然。

我只能想到两个主要缺点:

  1. 正如您所说 - 滥用系统。
  2. 我在迁移时发现的一个问题是无法使用抽象 bean。在 XML 中,将 bean 标记为抽象,即。 <bean id="someBean" abstract="true">...</bean>将使它成为一个模板 - 但在迁移具有 parent="someBean" 的 bean 时不能使用此模板容易地。您必须从 XML 中复制抽象。

关于java - 使用Spring的@Configuration类的缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20551530/

相关文章:

garbage-collection - Oracle或OpenJDK中GC的集合类型是精确的还是保守的?

configuration - 如何从 OpenSSL 生成动态库和静态库?

c# - 加载自定义配置文件

java - 将 lambda 函数存储在变量中?

java - 在 Hudson 中检查(从 VSS)和构建 Maven 项目时出现问题

java - Azure 事件中心 Java 客户端未处理数据

java - Spring:从文件中读取属性为什么执行 Condition::match

spring - 过滤器嵌套数组 Spring elasticsearch

java - 仅当文件存在时如何注入(inject) Optional<Resource>?

html - 利用浏览器缓存