パスワードの有効期限が切れているかどうかを確認する必要があります。彼が過去 30 日間パスワードを変更していない場合は、パスワードのリセットを依頼する必要があります。これが私のコードです。
Date lastPasswordModifiedDate =new SimpleDateFormat("MM/dd/yyyy").parse("10/30/2013");
if (lastPasswordModifiedDate == null)
{
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(0);
lastPasswordModifiedDate = cal.getTime();
}
Calendar lastPasswordChangeCal = GregorianCalendar.getInstance();
lastPasswordChangeCal.setTime(lastPasswordModifiedDate);
Date today = new Date();
lastPasswordChangeCal.add(Calendar.DAY_OF_MONTH, -30); //max 30 dates to expire
Date expireDate = lastPasswordChangeCal.getTime();
System.out.println(expireDate); //last password changed date
System.out.println(today); //today date - I changed in my system
System.out.println(today.after(expireDate));
これを印刷すると
System.out.println(expireDate);
System.out.println(today);
System.out.println(today.after(expireDate));
Mon Sep 30 00:00:00 IST 2013
Tue Oct 30 22:07:44 IST 2012
false
lastPasswordModifiedDate > 30 日または null の場合、true が返されるはずです。