All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.gitee.fufu669.utils.CacheDatetimeUtil Maven / Gradle / Ivy

There is a newer version: 6.666.66021
Show newest version
package com.gitee.fufu669.utils;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class CacheDatetimeUtil {

    public static final Logger logger = LoggerFactory.getLogger(CacheDatetimeUtil.class);

    private static SimpleDateFormat simpleDateFormat;

    private static SimpleDateFormat simpleDateFormatUTC;

    private static SimpleDateFormat simpleDateFormatUTCTimeZone;

    public static String getTimeStringNow(){
        return getSimpleDateFormat().format(Calendar.getInstance().getTime());
    }

    /*SimpleDateFormat是非线程安全的,所以不能用new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")来初始化成static final的字段.*/
    public static SimpleDateFormat getSimpleDateFormat(){
        if(simpleDateFormat==null){
            simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            return simpleDateFormat;
        }
        return simpleDateFormat;
    }

    public static SimpleDateFormat getSimpleDateFormatUTC(){
        if(simpleDateFormatUTC==null){
            simpleDateFormatUTC = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
            return simpleDateFormatUTC;
        }
        return simpleDateFormatUTC;
    }

    public static SimpleDateFormat getSimpleDateFormatUTCTimeZone(){
        if(simpleDateFormatUTCTimeZone==null){
            simpleDateFormatUTCTimeZone = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSz");
            return simpleDateFormatUTCTimeZone;
        }
        return simpleDateFormatUTCTimeZone;
    }

    public static Date toDate(String oddsTime) {
        try {
            return getSimpleDateFormat().parse(oddsTime);
        } catch (ParseException e) {
            logger.info(e.getMessage(),e);
            return Calendar.getInstance().getTime();
        }
    }

    public static Date addSeconds(Date date, int seconds){
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        calendar.add(Calendar.SECOND,seconds);
        return calendar.getTime();
    }


    public static Date addSeconds(int seconds){
        Calendar calendar = Calendar.getInstance();
        calendar.add(Calendar.SECOND,seconds);
        return calendar.getTime();
    }

    public static String getTimeString(Calendar calendar){
        return getSimpleDateFormat().format(calendar.getTime());
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy