gpt4 book ai didi

java - 通过 Spring 在依赖项中设置变量?

转载 作者:行者123 更新时间:2023-11-30 02:06:37 25 4
gpt4 key购买 nike

我有两个单独的类,每个类位于不同的 jar 中。 B 类是 A 的依赖项。我希望能够将 A 类变量中的值(从配置文件加载的 url)传递到 B 中。但是,我在这样做时遇到了麻烦,因为该值总是被填充为空。

public class A {

@Value("${url.name}")
private String url;

...

B b = new B();

这是我的B类

@Component
public class B implements BInterface {

@Autowired
private String url

我已经调试并确认 URL 在 A 类中成功加载,但似乎没有传递到 B 类中。任何人都可以建议我哪里出了问题吗?请注意,B 类与 A 类位于完全独立的 JAR 中,我认为这就是问题的核心所在。本质上,我想知道传递 A 类 JAR 中的值,然后将该值传递给 B 类(其 JAR 是依赖项或 A)中的类的最佳方法。

最佳答案

在类 A 中,如果您希望它来自 Spring 上下文,则无法调用 new B()

A 中的 @Autowire 类 B 怎么样。

public class A {

@Value("${url.name}")
private String url;

...

@Autowire
private B b;

此外,您无法 Autowiring 字符串属性。那么 B 类中的 @Value Sring URL 怎么样?

@Component
public class B implements BInterface {

@Value("${url.name}")
private String url;

关于java - 通过 Spring 在依赖项中设置变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51139893/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com