Spring Boot属性自动装配不起作用

用户1578872:

我有一个Spring启动2.3.3.RELEASE项目。

主要应用类别

    @SpringBootApplication()
    public class TestApplication {
           ...
    }
    
    @ConfigurationProperties(prefix = "test")
    public class TestProperties {
      ...
    }
    
    @Configuration
    @EnableConfigurationProperties({TestProperties.class})
    public class TestConfiguration {
    
    }

@Service
public class AmazonEmailService {

    private final AmazonSimpleEmailService client;
    
    @Autowired
    private TestProperties props;

    public AmazonEmailService() {
      props.getEmail(); // Here props is null ...
    }

}

在这里,TestProperties自动装配是AmazonEmailService不知道缺少什么。

其他自动装配在其他课程中也可以使用。

Chayne PS:

您可以改用@Autowired构造函数吗?

private TestProperies props;    

@Autowired
public AmazonEmailService(TestProperties props){
   this.props=props; 
   props.getEmail(); //Ok now.
}

这是因为@AutowiredSpring 使用on属性将AFTER对象创建的值注入但是在您的情况下,您尝试在构造器内使用道具。那时,它仍然为空

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Spring Boot + JavaFx自动装配不起作用

Spring-boot 和多个数据库连接:自动装配服务不起作用

通用类型的自动装配不起作用[Spring 4+]

Spring AOP之后Bean自动装配不起作用

基于名称的基于Spring Javaconfig的自动装配不起作用

Spring Boot配置属性不起作用

ComponentScan和bean的自动装配在Spring应用程序中似乎不起作用

用 Java 和 Spring 自动装配制作的 IBM Rhapsody 脚本不起作用

自动装配注释在DAO类中不起作用。使用Spring

Spring FactoryBean和自动装配不起作用:预期有单个匹配的Bean,但发现2

Spring Boot多模块属性不起作用

变量的Dockerfile Spring Boot属性不起作用

细粒度的Spring自动装配不起作用(@Autowired,带有附加的自定义注释)

自动装配服务在Spring Security Java配置自定义身份验证提供程序中不起作用

Spring Security自动连线不起作用

Spring 4的通用类自动装配在测试中起作用,而在部署到服务器时不起作用

Spring Boot视图不起作用

使用Spring Boot的@AuthenticationPrincipal不起作用

Spring Boot AuthenticationManagerBean不起作用

Spring Boot setContentType不起作用

@RefreshScope不起作用-Spring Boot

OneToMany + Spring Boot + Jpa不起作用

Spring Boot @ApiController 注释不起作用

Spring Boot验证不起作用

Spring Boot JPA不起作用

Spring Boot在JBoss上不起作用

简单的Spring Boot POST不起作用

Spring Boot:热插拔不起作用

WebMvcConfigurer 在 Spring Boot 中不起作用?