TimerTask的run()方法里面如何调用service层里面的方法
Posted jaden好青年
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TimerTask的run()方法里面如何调用service层里面的方法相关的知识,希望对你有一定的参考价值。
在java的spring框架中,用Timer和TimerTask来实现定时任务,有时我们要在TimerTask的子类的重写run方法里,调用service层的方法。
但是不管是spring.xml配置的bean还是注解@autoware注入的bean,在执行的时候都会报空指针异常。
这其中主要的问题是TimerTask不是由spring管理的,所以你TimerTask内部的service也无法自动注入,2种解决办法,1、TimerTask交由spring管理;2、通过applicationContext.getBean()获取service。
写一个servlet 在web.xml里配置一下。 利用servlet的生命周期init()初始化run()方法也可以。
以上是关于TimerTask的run()方法里面如何调用service层里面的方法的主要内容,如果未能解决你的问题,请参考以下文章