java有关一个动态定时任务的需求求助

每天都要在某个时间执行一个任务 这个时间是 动态的 从数据库取的
比如今天是要在22点45分15秒执行一个任务 明天的这个时间是 23点45分11秒 以此类推 每天都会有一个动态的时间任务
请问这个怎么用java实现 貌似quartz实现不了

用java的定时器可以实现,但是需要用两个定时器。一个每日执行,一个每秒执行。
实例代码:Task是最终的任务;SheduledTask接收任务时间,每隔一秒匹配一下当前时间,如果匹配就执行Task;
还有一个日定时器,可以设置每天0点执行,从数据库获取当日的任务时间,启用秒定时器。

 public class Task implements Runnable{
    @Override
    public void run() {
        System.out.println("do task.");
    }
}

秒定时器:

 import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;

/**
 * 定时器:接收一个时间,然后每隔开一秒比对是否是任务执行时间,如果是则执行任务
 * @author bh
 */
public class SheduledTask implements Runnable{
    private Task task;  //需要执行的任务
    private String time;//任务执行的时间
    //定时器每隔一秒执行run方法
    private ScheduledExecutorService service = Executors.newScheduledThreadPool(2);
    public SheduledTask(Task task,String time){
        this.task = task;
        this.time = time;
    }

    @Override
    public void run() {
        //判断当前时间是否为执行时间,如果是则执行任务,结束后关闭定时器
        System.out.println("每秒钟定时任务:比对任务时间,如果匹配则执行任务...");
        String now = nowAsString();
        if(now.equals(time)){
            this.task.run();
            service.shutdown();
        }
    }

    public void execute(){
        service.scheduleAtFixedRate(this, 0, 1, TimeUnit.SECONDS);
    }

    private  String nowAsString() {
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// 设置日期格式
        return df.format(new Date()).toString();
    }
}

日定时器:

 import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;

/**
 * @author bh
 */
public class DailyTask implements Runnable{

    @Override
    public void run() {
        //定时生成一个任务时间
        System.out.println("每日定时任务...");
        //此次时间从数据库获取
        String time = "2015-04-23 15:01:30";
        Task task = new Task();
        new SheduledTask(task,time).execute();
    }

    public static void main(String[] args) {
        ScheduledExecutorService service = Executors.newScheduledThreadPool(2);
        DailyTask dailyTask= new DailyTask();
        //每天凌晨执行当日定时任务
        service.scheduleAtFixedRate(dailyTask, 0, 1, TimeUnit.DAYS);
    }
}

用Quartz,这个框架专门帮你干这个的,具体google下