我需要一个网络项目来构建一个提醒,显示输入日期和时间的消息。我不想使用任何插件或 jar 文件。我想出了代码,但 timer.schedule(task,date);
我也是java新手,不知道这是否是正确的方法。
代码:
public String reminder(Model model, HttpServletRequest req, HttpServletResponse res) throws ParseException
{
String myDate = "2012-06-09 17:43:20";
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = (Date)formatter.parse(myDate);
TimerTask task = YoTimes(model);
Timer timer = new Timer();
timer.schedule(task,date);
return "/view";
}
private TimerTask YoTimes(Model model)
{
model.addAttribute("timerMsg", "Yo Timer");
return null;
}
编辑
堆栈跟踪:
ERROR:java.lang.NullPointerException
at java.util.Timer.sched(Unknown Source)
at java.util.Timer.schedule(Unknown Source)
最佳答案
private TimerTask YoTimes(Model model)
{
model.addAttribute("timerMsg", "Yo Timer");
return null; // ************
}
请查看您要返回的内容!
这会导致 NPE 也就不足为奇了。也许您想返回一个实际的 TimerTask 对象。 ;-)
因此,创建并返回您的 TimerTask:
private TimerTask YoTimes(final Model model)
{
model.addAttribute("timerMsg", "Yo Timer");
return new TimerTask() {
public void run() {
// whatever code you want called by the timer
}
};
}
关于java - 为 Web 项目构建 Java 提醒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10961238/