timerservicebean.java

来自「精通EJB3源码」· Java 代码 · 共 41 行

JAVA
41
字号
package com.foshanshop.ejb3.impl;

import java.util.Date;

import com.foshanshop.ejb3.TimerServiceDAO;

import javax.annotation.Resource;
import javax.ejb.Remote;
import javax.ejb.Stateless;
import javax.ejb.Timeout;
import javax.ejb.Timer;
import javax.ejb.TimerService;

@Stateless
@Remote (TimerServiceDAO.class)
public class TimerServiceBean implements TimerServiceDAO {
    private static int count = 0;
    @Resource private TimerService timerService; //直接注入定时服务
    
    public void scheduleTimer(long milliseconds){
        if(count ==0 ){
        	count = 1;
            timerService.createTimer(new Date(new Date().getTime() + milliseconds),
            		milliseconds, "大家好,这是我的第一个定时器");
        }
    }

    @Timeout
    public void timeoutHandler(Timer timer){
       System.out.println("---------第 "+ count +" 次------------");
       System.out.println("定时器事件发生,传进的参数为: " + timer.getInfo());

       if (count>=5){
           timer.cancel();//如果定时器触发5次,便终止定时器
           count = 0;
       }else{
    	   count++;
       }       
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?