相同类名Bean注入Spring解决

https://blog.csdn.net/liuyueyi25/article/details/83280239

多个相同Class 类

@LoadBalanced
@Bean
//必须new 一个RestTemplate并放入spring容器当中,否则启动时报错
public RestTemplate restTemplate() {
    RestTemplate restTemplate = new RestTemplate();
    restTemplate.setRequestFactory(clientHttpRequestFactory);
    restTemplate.setErrorHandler(new ClientExceptionHandler());
    return restTemplate;
}

@Bean
// 调用消息中心时使用此restTemplate
public RestTemplate normalRestTemplate() {
    RestTemplate restTemplate = new RestTemplate();
    // 建立http连接时间
    clientHttpRequestFactory.setConnectTimeout(1000 * 60);
    // 5分钟不返回数据则为超时
    clientHttpRequestFactory.setReadTimeout(1000 * 60 * 5);
    restTemplate.setRequestFactory(clientHttpRequestFactory);
    restTemplate.setErrorHandler(new ClientExceptionHandler());
    return restTemplate;
}

通过Spring 容器寻找时 可通过

@Autowired
private final RestTemplate normalRestTemplate;

属性名称指定注入时的方法进行指定

如果注入的是某个接口,需要找到下面实现类,也是类似 属性名称指定为需要注入的实体类名称

你可能感兴趣的:(spring)