我已经要求从用户输入设置计时器。基本上我的要求是......
1.设计一个带有输入字段的jsp页面,以设置计时器的日期和时间..
2.取这些输入字段值并设置日期和时间。
3.在新设定的日期和时间执行计时器..
实际上我需要在特定日期和时间触发邮件,这些日期和时间将从用户端动态更改为与jsp页面交互。如果日期和时间已更改,则应在该特定日期触发计时器,离开最后一个的时间..
目前我有一个带有main方法的java类,其中包含我需要更改的硬编码日期和时间的计时器,并为用户提供设置和时间..
请各位帮我如何从jsp页面获取并在java计时器类中使用它。
我的应用程序也是使用jsp,servlet和POJO文件的Web应用程序..
这是我的java类代码......
public final class FetchMail extends TimerTask {
/** Construct and use a TimerTask and Timer. */
public static void main(String... arguments) {
TimerTask fetchMail = new FetchMail();
Timer timer = new Timer();
timer.scheduleAtFixedRate(fetchMail, getTomorrowMorning4am(), fONCE_PER_DAY);
}
/**
* Implements TimerTask's abstract run method.
*/
@Override
public void run() {
System.out.println("Fetching mail...");
}
private final static long fONCE_PER_DAY = 1000 * 60 * 60 * 24;
private static Date getTomorrowMorning4am() {
Calendar date = Calendar.getInstance();
date.set(
Calendar.DAY_OF_MONTH, 14);
date.set(Calendar.HOUR, 10);
date.set(Calendar.MINUTE, 14);
date.set(Calendar.SECOND, 0);
date.set(Calendar.MILLISECOND, 0);
return date.getTime();
}
}
提前致谢..
答案 0 :(得分:0)
表示日期的字符串应该使用该JSP页面从客户端发送。
然后在服务器端,您应该将此字符串转换为Calendar对象,请参阅converting String to Calendar. What is the easiest way?
请注意,客户端和服务器应具有相同的日期格式。
不过,请考虑使用http://www.joda.org/代替Clendar