博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SimpleDateFormat线程不安全问题处理
阅读量:4592 次
发布时间:2019-06-09

本文共 1109 字,大约阅读时间需要 3 分钟。

在工作中,通过SimpleDateFormat将字符串类型转为日期类型时,发现有时返回的日期类型出错,调用方法如下:

public final class DateUtil {    static final DateFormat YYYYMMDD_FORMAT = new java.text.SimpleDateFormat("yyyyMMdd");    /**     * 把yyyyMMdd格式字符串转换成 java.util.Date     *     * @param dateStr     * @return     */    public static java.util.Date getUtilDateByShortStr(String datestr) {        try {            return YYYYMMDD_FORMAT.parse(datestr);        } catch (ParseException e) {            throw new SasException("error.dateformate");        }    }}

在多线程调用的情况下,返回的日期型数据与传进去的字符串型日期有可能不一致,即SimpleDateFormat是线程不安全的,所以要把以上方法改造成线程安全的:

public final class DateUtil {    static final DateFormat YYYYMMDD_FORMAT = new java.text.SimpleDateFormat("yyyyMMdd");    /**     * 把yyyyMMdd格式字符串转换成 java.util.Date     *     * @param dateStr     * @return     */    public synchronized static java.util.Date getUtilDateByShortStr(String datestr) {        try {            return YYYYMMDD_FORMAT.parse(datestr);        } catch (ParseException e) {            throw new SasException("error.dateformate");        }    }}

 

转载于:https://www.cnblogs.com/atai/p/6141889.html

你可能感兴趣的文章
BZOJ 1103 [POI2007]大都市meg(树状数组+dfs序)
查看>>
BZOJ 4260 Codechef REBXOR(字典树)
查看>>
idea使用maven逆向mybitis的文件
查看>>
宿舍助手app——个人工作第二天
查看>>
线段树(hdu 2795)
查看>>
4种方法解决为 li列表 添加事件问题
查看>>
codevs3044 线段树+扫描线
查看>>
使用抽象类和接口的优解
查看>>
第六次站立会议
查看>>
SpringCloud系列二:硬编码实现简单的服务提供者与服务消费者
查看>>
linux 基本。。
查看>>
David Sankoff 介绍学习链接
查看>>
当连续进行多个请求,并且请求的url地址相同时。放弃前面的所有请求,只执行最后一次请求。...
查看>>
[IIS]安装及使用
查看>>
[Tizen开发]基于Tizen平台的终端开发模拟器1 - Web
查看>>
Html::a 生成 method=post
查看>>
c语言:矩阵相乘-矩阵相加 新手练习1
查看>>
hbase知识
查看>>
PHP性能优化
查看>>
poj 1743 后缀数组 最长不重叠子串
查看>>