spring mvc定时任务

当需要定时缓存,或者做一些定时任务时,最早可能是页面发请求(页面定时),还有就是在配置文件配置在web.xml

但是遇到各种问题,例如初次启动默认多次加载多次(可解决),或者‘定时任务的下一层方法无法获取自动注入的service’(笨办法是通过参数传过去)等等,实在是费时费力

spring mvc其实是自带定时任务配置的,并且可以使用自动注入

实现方法

   1》、在springmvc的配置文件中加入

1:

xmlns:task="http://www.springframework.org/schema/task"
2:xsi:schemaLocation下加

http://www.springframework.org/schema/task 
http://www.springframework.org/schema/task/spring-task.xsd
3:

  <!-- task任务扫描注解 -->  
    <task:annotation-driven/> 

  <!-- 配置你的方法类的路径 --> 

    <context:component-scan base-package="com.trs" /> 
2》、可以新建一个类

@Component
public class CacheManager { 
	@Autowired
	private BehaviorService behaviorService;
/*
 * 添加定时任务
 */
//@Scheduled(cron="0 0/5 14 * * ?") //14点开始间隔5秒执行  
@Scheduled(cron = "0 0 1 * * ?")
public void taskCycle(){
	/*
	 * 也可以使用自动注入的Service了
	 */
     System.out.println("success!对于定时的方法要加Scheduled,其余不加,含有定时任务的类要用@Component以保证被扫描");
} 
public String tday(){
	    Calendar   c   =   Calendar.getInstance();   
	    c.add(Calendar.DAY_OF_MONTH, -1);  
	    SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");  
	    String mDateTime=formatter.format(c.getTime());  
	    return mDateTime;
	     System.out.println("我是不是没有被执行");
}
} 
 

就可以了!



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值