方法参数中注入spring管理的bean

在日常开发中使用做多的是通过@Autowired的方式注入属性,如下:

@RestController
@RequestMapping("/system/config")
public class SysConfigController extends BaseController
{
    @Autowired
    private ISysConfigService configService;

下面介绍一种不太常用的,在方法参数中注入spring管理的bean方式,如下:

@Configuration
public class DruidConfig
{
    @Bean
    @ConfigurationProperties("spring.datasource.druid.master")
    public DataSource masterDataSource(DruidProperties druidProperties)
    {
        DruidDataSource dataSource = DruidDataSourceBuilder.create().build();
        return druidProperties.dataSource(dataSource);
    }
}

需要注意两点;

1、方法需要使用@Bean或者@Autowired注解。

2、方法中参数需要是spring管理的bean,比如上例中的druidProperties。


版权声明:本文为u014486725原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。