【时间格式引发的事故】

时间格式引发的事故

背景

前不久写了一个删除数据接口,条件是根据时间删除时间后面的数据。入参是 时间字符串。后台的时间格式 是 yyyyMMdd。然后当时前端传参数的时候,随意的传了2023-07-31的时间,然后将该表的数据全部删除了。

实战演示

java 复制代码
public static void main(String[] args) throws ParseException {
      /**接口参数*/
        String paramTime="2023-07-31";
        /**后台解析格式*/
        SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyyyMMdd");

        Date date=simpleDateFormat.parse(paramTime);
        String resultTime =simpleDateFormat.format(date);

        System.out.printf("date is "+resultTime);
    }

开始入参是2023-07-31,经过解析后,时间变成了 2022 -12-07 了。这样就多删除了7个多月的数据了。

结论

代码需要经过充分的测试,不能大意。

相关推荐
BillKu13 分钟前
Java + Spring Boot + Mybatis 插入数据后,获取自增 id 的方法
java·tomcat·mybatis
全栈凯哥14 分钟前
Java详解LeetCode 热题 100(26):LeetCode 142. 环形链表 II(Linked List Cycle II)详解
java·算法·leetcode·链表
chxii15 分钟前
12.7Swing控件6 JList
java
全栈凯哥17 分钟前
Java详解LeetCode 热题 100(27):LeetCode 21. 合并两个有序链表(Merge Two Sorted Lists)详解
java·算法·leetcode·链表
YuTaoShao17 分钟前
Java八股文——集合「List篇」
java·开发语言·list
PypYCCcccCc22 分钟前
支付系统架构图
java·网络·金融·系统架构
华科云商xiao徐43 分钟前
Java HttpClient实现简单网络爬虫
java·爬虫
扎瓦1 小时前
ThreadLocal 线程变量
java·后端
BillKu1 小时前
Java后端检查空条件查询
java·开发语言
jackson凌1 小时前
【Java学习笔记】String类(重点)
java·笔记·学习