我有一个Spring配置类,我正在使用它从属性文件中读取并创建bean。
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
@Configuration
@PropertySource("classpath:conf.properties")
public class ApplicationConfiguration {
@Value("${name}")
private String username;
@Value("${password}")
private String password;
@Value("${ethnicity}")
private String ethnicity;
@Bean
public Employee employee(){
Employee emp = new Employee();
ConfigParam configParam = new ConfigParam();
configParam.setEthnicity(ethnicity);
emp.setConfigParam(configParam);
return emp;
}
}
在xml文件中
<property name="configParam">
<bean class="com.test.config.ConfigParam">
<property name="ethnicity" value="indian" />
</bean>
</property>
我能够设置用户名
和密码
属性,但无法将config Param
属性设置为员工
,因为我们需要注入ConfigParam
及其bean
。请让我知道如何在员工
方法中注入bean。
假设包含configParam定义的Spring XML上下文称为my Spring上下文。xml并位于资源/spring文件夹中,换句话说,位于类路径中的spring文件夹中(名称和文件夹是任意的):
通过使用ImportResource注释,使您的应用程序配置配置类知道该XML上下文文件:
@Configuration
@ImportResource("classpath:spring/my-spring-context.xml")
@PropertySource("classpath:conf.properties")
public class ApplicationConfiguration {
//...
}
然后在您的员工方法依赖项中像往常一样注入XML bean。如果要按名称而不是按类型插入,可以直接在参数定义前添加限定符(“myBeanName”)。
@Bean
@Autowired
public Employee employee(ConfigParam configParam){
Employee emp = new Employee();
configParam.setEthnicity(ethnicity);
emp.setConfigParam(configParam);
return emp;
}
主要内容:构造函数注入,setter 注入,短命名空间注入所谓 Bean 属性注入,简单点说就是将属性注入到 Bean 中的过程,而这属性既可以普通属性,也可以是一个对象(Bean)。 Spring 主要通过以下 2 种方式实现属性注入: 构造函数注入 setter 注入(又称设值注入) 构造函数注入 我们可以通过 Bean 的带参构造函数,以实现 Bean 的属性注入。 使用构造函数实现属性注入大致步骤如下: 在 Bean 中添加一个有参构造函数,构造
问题内容: 我有一堆Spring bean,它们是通过注释从类路径中拾取的,例如 我想将app.properites的属性之一注入到上面显示的bean中。我不能简单地做这样的事情 因为PersonDaoImpl在Spring XML文件中没有功能(它是通过注释从类路径中拾取的)。我有以下内容: 但是我不清楚我如何从中访问我感兴趣的财产? 问题答案: 你可以在Spring 3中使用EL支持进行此操作
我试图向自定义注释中注入一个值,但Spring似乎没有进行评估。
问题内容: 我有一堆Spring bean,它们是通过注释从类路径中拾取的,例如 在Spring XML文件中,定义了一个PropertyPlaceholderConfigurer: 我想将app.properites的属性之一注入到上面显示的bean中。我不能简单地做这样的事情 因为PersonDaoImpl在Spring XML文件中没有功能(它是通过注释从类路径中拾取的)。我有以下内容: 但
本文向大家介绍Spring Bean的属性注入方式,包括了Spring Bean的属性注入方式的使用技巧和注意事项,需要的朋友参考一下 在spring中bean的属性注入有两种 构造器注入 Setter方法注入 集合属性的注入 在spring中对于集合属性,可以使用专门的标签来完成注入. 例如:list set map properties等集合元素来完成集合属性注入. List属性注入 如果属性
如何将和的值注入Spring重试注释?在下面的示例中,我想用配置属性的相应引用替换maxAttempts的值和backoff值的值。