JAVA 利用時間戳來判斷TOKEN是否過時

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZoneOffset;
import java.time.format.DateTimeFormatter;

/**
 * @description:
 * @author: kejie.huang
 * @date: Created in 2019/10/16 14:36
 * @version:
 * @modified By:
 */
public class Demo01 {
    public static void main(String[] args) {
        LocalDateTime localDateTimeNow = LocalDateTime.now();
        System.out.println(DateUtils.formatDateToParse(DateUtils.localDateTimeConvertDate(localDateTimeNow),DateUtils.DATE_FORMART_YYYY_MM_DD_HH_MM_SS));
        Long milliSecond = getTimestampOfDateTime(localDateTimeNow);
        milliSecond = milliSecond + (7200L * 1000L);
        LocalDateTime dateTime = getDateTimeOfTimestamp(milliSecond);
        System.out.println(DateUtils.formatDateToParse(DateUtils.localDateTimeConvertDate(dateTime),DateUtils.DATE_FORMART_YYYY_MM_DD_HH_MM_SS));
    }
    public static long getTimestampOfDateTime(LocalDateTime localDateTime) {
        ZoneId zone = ZoneId.systemDefault();
        Instant instant = localDateTime.atZone(zone).toInstant();
        return instant.toEpochMilli();
    }
    public static LocalDateTime getDateTimeOfTimestamp(long timestamp) {
        Instant instant = Instant.ofEpochMilli(timestamp);
        ZoneId zone = ZoneId.systemDefault();
        return LocalDateTime.ofInstant(instant, zone);
    }
}

每每在開發過程當中,交互時,須要頭部設置TOKEN,而這個TOKEN的有效期,該如何設置?以上的案例只是婉轉的舉例說明,7200 * 1000 表明兩個小時,具體的算法是 1*60*60*2,而一秒的等於1000,以上引用了DateUtils,能夠參考http://www.javashuo.com/article/p-vyqqbxam-gm.htmljava

相關文章
相關標籤/搜索