我正在开发一个需要安排的应用程序(就像微软Outlook会议重现中的那个)。我们可以每天,每周,每月和每年安排工作,并在每个时间表下有变化(例如每月的每一个星期一或每周的每个星期一等)。
它基本上应该像在Microsoft Outlook会议安排中一样工作。
我可用于实现此逻辑的任何指针,链接,建议或任何可用的api将会有很大帮助
由于
答案 0 :(得分:1)
您可能需要查看Quartz
答案 1 :(得分:0)
我最近在类似的事情上工作,主要问题是找到本周的第一天,从那里找到所需的一周相对容易,另一个问题是找到下一天的第一天一个月。
以下是获取的代码
下个月的开始(下个月的第一天)
import java.util.Calendar;
import java.util.Date;
// ...
public static long getWeekStart()
{
//INIT Date
Calendar cal = Calendar.getInstance();
cal.clear(Calendar.HOUR_OF_DAY);
cal.clear(Calendar.MINUTE);
cal.clear(Calendar.SECOND);
cal.clear(Calendar.MILLISECOND);
//get start of this week in milliseconds
cal.set(Calendar.DAY_OF_WEEK, cal.getFirstDayOfWeek());
return cal.getTime().getTime();
}
public static long getNextWeek()
{
//INIT Date
Calendar cal = Calendar.getInstance();
cal.clear(Calendar.HOUR_OF_DAY);
cal.clear(Calendar.MINUTE);
cal.clear(Calendar.SECOND);
cal.clear(Calendar.MILLISECOND);
//get start of this week in milliseconds
cal.set(Calendar.DAY_OF_WEEK, cal.getFirstDayOfWeek());
// start of the next week
cal.add(Calendar.WEEK_OF_YEAR, 1);
return cal.getTime().getTime();
}
public static long getNxtMonthStart()
{
Calendar cal = Calendar.getInstance();
cal.clear(Calendar.HOUR_OF_DAY);
cal.clear(Calendar.MINUTE);
cal.clear(Calendar.SECOND);
cal.clear(Calendar.MILLISECOND);
// get start of the month
cal.set(Calendar.DAY_OF_MONTH, 1);
// get start of the next month
cal.add(Calendar.MONTH, 1);
return cal.getTime().getTime();
}
希望这有助于获得一周的日子。