关于springboot:2活动页面imp代码

35次阅读

共计 1294 个字符,预计需要花费 4 分钟才能阅读完成。

package com.cy.pj.activity.service.impl;

import java.util.List;
import java.util.Timer;
import java.util.TimerTask;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.cy.pj.activity.dao.ActivityDao;
import com.cy.pj.activity.pojo.Activity;
import com.cy.pj.activity.service.ActivityService;

@Service // 扩占性能
public class ActivityServiceImpl implements ActivityService {
    @Autowired
    private ActivityDao activityDao;

    @Override
    public List<Activity> findActivitys() {
        // TODO Auto-generated method stub
        return activityDao.findActivitys();}

    @Override
    public int saveObject(Activity entity) {
        // TODO Auto-generated method stub
        int rows= activityDao.insertObject(entity);
        // 心愿工夫到了 (endTime) 主动批改活动状态
        // 解决方案: 基于任务调度去实现任务调度 - 基于工夫的设计主动执行工作)// 1 借助 java 中的 Timer 对象去实现
        // ### 工作 ###调度工作###调度工作###调度工作### 调度任务调度任务调度任务调度任务调度
        Timer timer = new Timer();// 此对象创立时会在底层启动一个线程。通过此县城对工夫进行监控
        // 外面的类型是 timerTask 类型所以要 newTimerTask
        timer.schedule(new TimerTask() {
            @Override
            public void run() {
                // 此地位批改流动的状态信息
                System.out.println("开始任务调度的执行");
                // 通过映射获取到了 id 的值间接 getId 就行了
                activityDao.updateState(entity.getId());
                timer.cancel();// 完结调度工作 //cancel 砍搜}
        }, entity.getEndTime());// 通过 entity 调用 getEndTime 办法
        // 在此地位批改流动的状态信息

        // 2 借助 java 线程池中的任务调度对象去实现 (ScheduledExecutorService) 去实现
        // 3 借助第三方框架去实现

        return rows;// 间接返回这个值了
    }
    // ### 工作 ###调度工作###调度工作###调度工作### 调度任务调度任务调度任务调度任务调度
}

正文完
 0