java - 覆盖来自外部库的 bean

标签 java spring

如果我有一个项目,其中依赖于一个库,其中未指定 bean 的范围(默认情况下是单例),是否有办法覆盖 bean 定义以保持其相同,但仅将范围更改为原型(prototype),是在运行时还是通过 bean 配置?

最佳答案

分三种情况:

  • 如果你想要覆盖的bean在标记的配置类中 使用 @Confgiuration 注解,可以排除此配置 类并从那里声明所有bean
  • 如果注释直接出现在类上,则应排除 这些类来自 @ComponentScan basePackages 。
  • 您可以设置标记为的配置类的顺序 @Configuration注解,最后一个配置类将 覆盖所有先前声明的bean

关于java - 覆盖来自外部库的 bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55936559/

相关文章:

java - 可以使用复合键制作 spring-data-elasticsearch @Document 吗?

java - 正确使用 TransportClient 进行 Elasticsearch

java - HttpClient + FileUpload 如何从 servlet 下载文件到我的应用程序?

java - 这个 double 是什么格式以及如何转换它?

Spring Boot 提供静态内容 : addResourceLocations vs static-locations

java - 在Spring MVC中获取Windows用户名

spring - 如何在 spring mvc 表单中验证多个模型?

java - 为什么在处理图像文件时会出现此错误?

java - ExecutorService 应该在 bean 的整个生命周期中都处于 Activity 状态,或者应该具有狭窄的(方法)范围

java - JInternalFrame 在 Netbeans 7.1.2 中不使用 JFrame L&F