多个RestTemplate对象示例详解编程语言

 1 @Configuration 
 2 public class MyConfiguration { 
 3  
 4     @LoadBalanced 
 5     @Bean 
 6     RestTemplate loadBalanced() { 
 7         return new RestTemplate(); 
 8     } 
 9  
10     @Primary 
11     @Bean 
12     RestTemplate restTemplate() { 
13         return new RestTemplate(); 
14     } 
15 } 
16  
17 public class MyClass { 
18     @Autowired 
19     private RestTemplate restTemplate; 
20  
21     @Autowired 
22     @LoadBalanced 
23     private RestTemplate loadBalanced; 
24  
25     public String doOtherStuff() { 
26         return loadBalanced.getForObject("http://stores/stores", String.class); 
27     } 
28  
29     public String doStuff() { 
30         return restTemplate.getForObject("http://example.com", String.class); 
31     } 
32 }

 如果发现报这个错误

java.lang.IllegalArgumentException: Can not set org.springframework.web.client.RestTemplate field com.my.app.Foo.restTemplate to com.sun.proxy.$Proxy89

试试注入RestOperations或者加上spring.aop.proxyTargetClass=true

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/15669.html

(0)
上一篇 2021年7月19日 18:37
下一篇 2021年7月19日 18:37

相关推荐

发表回复

登录后才能评论