Java 在SpringBoot中,是否可以在不使用SpringBean的情况下获取属性?

Java 在SpringBoot中,是否可以在不使用SpringBean的情况下获取属性?,java,spring,spring-boot,Java,Spring,Spring Boot,我有一个Configuration.class,它从application.properties获取属性 @Component public class Configuration { @Value("${someValue}") public String someValue; } 我有另一个名为Fetcher的类,它需要属性 class Fetcher { @Autowired private Configuration configuration;

我有一个Configuration.class,它从
application.properties
获取属性

@Component
public class Configuration {

    @Value("${someValue}")
    public String someValue;
}
我有另一个名为
Fetcher
的类,它需要属性

class Fetcher {

    @Autowired
    private Configuration configuration;

    public void doSomethingWithSomeValue() {
        System.out.println(configuration.someValue);
    }
}
当然,上面的代码会失败,因为
Fetcher
不是Springbean(我没有向它添加
@Component
/
@Service
/
@Repository
)。我的问题是,是否有可能在
Fetcher
中获取
someValue
,而不使其成为Springbean?

否和是

不,因为这就是Spring和依赖注入的全部思想。您必须使用能够访问Spring ApplicationContext的东西

是的,因为您可以使用publish–subscribe模式,或者您可以将一些上下文感知bean设置为单例,并让它们公开所有必要的属性。但它只是对对象的委托,对象可以访问Spring上下文。打个比方:这不是犯罪,它只是卖武器,把钱给一个会开枪的人:)

不,是的

不,因为这就是Spring和依赖注入的全部思想。您必须使用能够访问Spring ApplicationContext的东西


是的,因为您可以使用publish–subscribe模式,或者您可以将一些上下文感知bean设置为单例,并让它们公开所有必要的属性。但它只是对对象的委托,对象可以访问Spring上下文。打个比方:这不是犯罪,它只是卖武器,把钱给一个会实弹的人:)

也许,把配置文件读入地图,然后从地图上取出来?看一看,也许,把配置文件读入地图,然后从地图上取出来?看一看,然后