当在静态方法中需要注入依赖应用非静态方法时会出现问题,可通过如下方式解决
一采用@PostConstruct 注解
@Autowired
private SimpleStringRedisTemplate simpleStringRedisTemplate;
@Autowired
private static SimpleStringRedisTemplate redisTemplate;
@PostConstruct
private void init(){
redisTemplate = simpleStringRedisTemplate;
}
二采用 implements ApplicationContextAware
public class AccountServiceConfig implements ApplicationContextAware{
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
redisTemplate = applicationContext.getBean(SimpleStringRedisTemplate.class);
}
}