- SimpleDateFormat是线程不安全的
- 从JDK1.8之后,提供了线程安全的日期类对象,我们可以使用java.time包下的类型代替原来的日期操作
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZoneOffset;
import java.time.format.DateTimeFormatter;
import java.util.Date;
public class DateTimeUtil {
private static DateTimeFormatter dtf=DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
public static Long getTs(String dateTime){
LocalDateTime localDateTime=LocalDateTime.parse(dateTime,dtf);
Instant instant = localDateTime.toInstant(ZoneOffset.of("+8"));
long ts = instant.toEpochMilli();
return ts;
}
public static String toYMDHms(Date date){
LocalDateTime localDateTime = LocalDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault());
String dateTime = dtf.format(localDateTime);
return dateTime;
}
}