问题描述
使用Bridge wb = new Bridge()
不适用于依赖项注入。你restTemplate
没有被注入,因为wbin不是由Spring管理的。
你必须自己制作Bridge
一个Spring bean,例如通过注释:
@Service
public class Bridge {
// ...
}
或通过bean声明:
<bean id="bridge" class="Bridge"/>
解决方法
我能够使用RestTemplate并将其自动连线。但是我想将我与其余模板相关的代码部分移到另一个类中,如下所示:
public class Bridge {
private final String BASE_URL = "http://localhost:8080/u";
@Autowired
RestTemplate restTemplate;
public void addW() {
Map<String,String> x = new HashMap<String,String>();
W c = restTemplate.getForObject(BASE_URL + "/device/yeni",W.class,x);
System.out.println("Here!");
}
}
在另一堂课上我称之为:
...
Bridge wb = new Bridge();
wb.addW();
...
我是Spring和Dependency Injection术语的新手。我的restTemplate
变量为null并引发异常。我该怎么解决(我不知道它与我使用 new
关键字有关)吗?