package com.yaojack.core.utils.transformat;
import com.yaojack.core.utils.verify.UtilValidator;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* 日期格式转换类
*
* @module 格式化
* @author YuJJ
*/
public class FormatDate {
/**
* @Fields DATE_YMDHmS : yyyy-MM-dd HH:mm:SS
*/
public static final String DATE_YMDHmS = "yyyy-MM-dd HH:mm:ss";
/**
* @Fields DATE_YMD : yyyy-MM-dd
*/
public static final String DATE_YMD = "yyyy-MM-dd";
/**
* @Fields DATE_HmS : hh:mm:ss
*/
public static final String DATE_HmS = "HH:mm:ss";
/**
* @Fields DATE_HmS : yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
*/
public static final String DATE_YMDHmSZ = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'";
/**
* @Fields threadLocal : DateFormat的ThreadLocal
*/
private static ThreadLocal<DateFormat> threadLocal = new ThreadLocal<DateFormat>();
private static DateFormat getDateFormat(String format) {
DateFormat dateFormat = threadLocal.get();
if (dateFormat == null
|| !format.equals(((SimpleDateFormat) dateFormat).toPattern())) {
dateFormat = new SimpleDateFormat(format);
threadLocal.set(dateFormat);
}
return dateFormat;
}
/**
* 按照指定格式,将Date转换成字符串
*
* @param format
* @param date
* @return String
* @author YuJJ
*/
public static String formatDate(String format, Date date) {
if (UtilValidator.isEmpty(format) || date == null) {
return null;
}
return getDateFormat(format).format(date);
}
/**
* 按照指定格式,将字符串转换成Date
*
* @param format
* @param date
* @return Date
* @author YuJJ
*/
public static Date parse(String format, String date) {
if (UtilValidator.isEmpty(format) || date == null) {
return null;
}
try {
return getDateFormat(format).parse(date);
} catch (ParseException e) {
}
return null;
}
}
时间FormatDate
于 2020-04-02 16:45:30 首次发布