java - 如何通过双重引用创建bean?

标签 java spring javabeans

我首先不知道如何阐明/搜索这个问题。

所以初始化的bean是:

<bean id='domain' factory-bean='appConfig' factory-method='getDomain'/
<bean id='prod' class='java.lang.String'> <constructor-arg value='Base.Prod'/> </bean>
<bean id='test' class='java.lang.String'> <constructor-arg value='Base.Beta' /> </bean>

现在我需要根据域的值使用 Prod 或 Test 的值创建一个 bean“X”。如果域是Prod,则使用Prod的bean来初始化bean X,否则使用Test。

${${domain}} 不起作用。我尝试搜索,但找不到表示此意思的问题。

最佳答案

这会起作用

@Value("${domain}")
private String domain;

结合

-Ddomain=dev

Spring 将任何系统属性添加到从属性文件读取的属性中。

关于java - 如何通过双重引用创建bean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44901038/

相关文章:

java - 如何在字段上硬编码组信息以进行级联验证

jsf/primefaces 在 bean 初始化期间加载指示器

java - 如何处理外部库的内存泄漏

java - Maven Dropwizard 中的 Hibernate 数据库连接错误

java - Spring MVC HttpServletRequest请求: which button clicked on

java - 如何在 while 循环内使用 Scanner hasNextInt() ?

java - 为spring data mongo指定多个基础包

java - 将 bean 作为构造函数参数注入(inject)子类中

java - BeanUtils 与 ReflectionToStringBuilder 的性能对比(用于 Bean 类)

java - 如何在tomcat关闭时关闭spring bean中的ThreadPoolExecutor?