版权声明:本文为博主原创文章,未经博主允许不得转载。学习交流QQ群: 173124648 https://blog.csdn.net/u013126379/article/details/86407307
好久没有记录了,今天来记录下工作中的一些细节问题。
工作中经常用到SimpleDateFormat,但是大部分人可能都会按照下面的格式去使用
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
上面的方式在我们看来一般是不会出现什么问题,如果出现在多线程的情况下,它就会有问题。因为SimpleDateFormat是线程不安全的类。如果要保证SimpleDateFormat线程的安全性就要使用下面的方式使用:
public class DateUtils { private static final ThreadLocal<DateFormat> df = new ThreadLocal<DateFormat>(){ @Override protected DateFormat initialValue() { return new SimpleDateFormat("yyy-MM-dd"); } }; public static void main(String[] args) { DateFormat dateFormat = df.get(); dateFormat.format(new Date()); System.out.println(dateFormat); } }