NutzCN Logo
问答 quartz定时任务dao没有注入
发布于 2929天前 作者 Hamming 4249 次浏览 复制 上一个帖子 下一个帖子
标签: dao quartz ioc

运行定时任务时dao是空的 是为什么呢

package cn.wizzer.common.quartz.job;

import cn.wizzer.modules.models.opo.Opo_order;
import cn.wizzer.modules.services.opo.OpoOrderService;
import org.nutz.dao.Cnd;
import org.nutz.dao.Dao;
import org.nutz.ioc.aop.Aop;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.log.Log;
import org.nutz.log.Logs;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 订单任务更新订单状态
 * Created by Hamming on 2016/12/15.
 */
public class OrderJob implements Job {

    private static final Log log = Logs.get();
    @Inject
    protected Dao dao;

    public void execute(JobExecutionContext context) throws JobExecutionException {

        log.info("Order Job");
        List<Opo_order> orderList = dao.query(Opo_order.class,Cnd.where("delFlag","=",false));
        List<Opo_order> opo_orders = new ArrayList<>();
        for(Opo_order ol:orderList){
            boolean flag = ol.getEnd_time().before(new Date());
            if(flag&&Opo_order.STATE_RETURN.equals(ol.getState())){
                ol.setState(Opo_order.STATE_RETURN_MATCH);
                opo_orders.add(ol);
            }
        }
        if(opo_orders.size()> 0){
            dao.update(opo_orders);
        }
    }
}
4 回复

缺了@IocBean

你好,能看看你的具体配置吗?我也是dao注入不进去,@IocBean加了还是注入不进去

@qq_34441c67 没有用 nutz-integration-quartz ? 自行设置一下JobFactory也是可以的

https://github.com/nutzam/nutzmore/tree/master/nutz-integration-quartz

添加回复
请先登陆
回到顶部