一般需要在一个工具类中使用@Autowired 注解注入一个service。但是由于工具类方法一般都写成static,所以直接注入就存在问题。
栗子:
@Component
public class SmsController {
private static Logger logger = LoggerFactory.getLogger(SmsController.class);
@Autowired
private MessagesInfoService messagesInfoService;
private static SmsController smsController;
@PostConstruct
public void init() {
smsController = this;
smsController.messagesInfoService = this.messagesInfoService;
}
/**
*短信历史查询接口(查询某个时间段发送的短信)
*/
@RequestMapping(value = "/queryMessage",method = RequestMethod.GET)
public ModelAndView queryMessage{
pager = messagesInfoService.findPager(map,5,pIndex);
ModelAndView modelAndView = new ModelAndView("manage/jgdxgl/jgdx_qm");
List<MessagesInfo> list = pager.getItem();
modelAndView.addObject("pager",pager);
modelAndView.addObject("list",list);
return modelAndView
}
}