DateUtil线程安全使用

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.Instant;
import java.util.Date;
import org.apache.commons.lang.StringUtils;

public class DateUtilTest {

     public final static String pattern_full = "yyyy-MM-dd HH:mm:ss";
    
     private static final ThreadLocal df = new ThreadLocal() {
         @Override
         protected DateFormat initialValue() {
             return new SimpleDateFormat(pattern_full);//常用的一种类型
         }
     };
    
     private static final DateFormat getDateFormat(ThreadLocal format) {
         return (DateFormat) format.get();  
     }
    
     //转化数据类型,string->date
     public static Date getDateByDateFormat(String date_str,DateFormat df) {
        if(StringUtils.isEmpty(date_str))
            return null;
        try {
            //转化数据格式
            return df.parse(date_str);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return null;
     }
    
     //date->string
     public static String getDateStrByDateFormat(Date date,DateFormat df) {
         return df.format(date);
     }
    
     //获取当前Date
     public static Date getCurrentDate(){
         Instant instant = Instant.now();
         return Date.from(instant);
     }
    
     //获取DateStr[yyyy-MM-dd HH:mm:ss]
     public static String getCurrentTimeFullStr() {
         return getDateStrByDateFormat(getCurrentDate(),getDateFormat(df));
     }
    

}

你可能感兴趣的:(开发总结,开发总结)