前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >什么?明明是2020年12月30日显示2021年12月30日?

什么?明明是2020年12月30日显示2021年12月30日?

作者头像
木左
发布于 2020-09-03 09:45:49
发布于 2020-09-03 09:45:49
85900
代码可运行
举报
运行总次数:0
代码可运行

公元2020年12月30日上午9点,准时开电脑准备开始一天的工作。突然运营的小姐姐过来找,说线上签的合同有问题,应该显示2020年12月30日但是显示的是2021年12月30日。我一听,脸上流露出一切尽在掌握的表情,淡淡地说了句:“知道了,我等下看看。”内心却是-什么鬼,还有这奇葩的问题,难道数据算错了,不应该,这不是都上线一年多的功能,不应该呀!不管了,去看看再说。 根据小姐姐提供的信息,我查询数据库相关数据信息,发现数据库里的数据没有任何问题,历史经验和直觉告诉我,这不是计算的问题,应该是显示层的问题(

看来不是我开发的功能,不是我的锅,我不背,瞬间感觉后背的冷汗落下去了)。既然不是我的问题,那我就看看前端生成合同PDF文件的时候都干了些啥,一看格式化日期使用的是Velocity自带的日期格式化工具,是这么写的

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$!date.format("YYYY年M月d日",${currentDate})

可能踩过坑的同学一眼就看到问题所在了,奈何我没留意过。所以直接打开度娘,问问她是是不是Velocity自己的BUG,结果看了半天,没人碰到。自己想想,要是真是Velocity自己的问题,这么大的问题人不早修复了?嗯,肯定哪里不对,这个时候需要的其实就是去上个卫生间,清空一下思路。好吧,先去个卫生间。

回来会我就看这个写法,总感觉有点别扭呢,我记得自己写的时候都是yyyy-MM-dd 不就是大小写不一样吗,应该没啥问题呀!仔细一想,好像不对呀,那个M貌似就区分大小写,这个没注意过,难道也区分。嗯,遇到这个事情最好的办法就是试试就知道了。于是

这一试,还真不一样。行,问题是找到了,先改了,把线上的问题改了再说。更新了生产环境。通知运营小姐姐再试试。一会小姐姐通知,可以了。线上的问题就这么解决了,可是疑问还在呀,为啥会不一样呢,嗯,肯定是意思不一样呗,你傻不傻。那就去查查都是些啥意思。

还真是不一样,那Week year是什么意思呢 原来表示的是具体日期所在周属于的年份,而外国人人家一周是从周日开始的,只要本周跨年就会变成下一年。对着日历验证了下其他日期,看看对不对。从2020年12月27日到2020年12月31都是同样的情况。心中的疑问终于解决了。小伙伴们学到了吗?

争取每天都能有所进步,有所收获。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-02-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 木左侃技术人生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
如果你在代码中用了YYYY-MM-DD那么要注意了!
写这篇博文是记录下跨年的bug。去年隔壁组的小伙伴就是计算两个日期之间间隔的天数,因为跨年的原因计算有误。
王知无-import_bigdata
2020/01/14
8350
如果你在代码中用了YYYY-MM-DD那么要注意了!
国外疫情愈加严重的3月,VR或成新社交媒介
“吹面不寒杨柳风”,与2月全国戒严的封锁状态相比,3月里国内疫情已愈加明朗。然而,国外却是“凛冬已至”。下面就跟随VRPinea来看看VR行业都收到了哪些影响吧。
VRPinea
2020/04/01
7040
国外疫情愈加严重的3月,VR或成新社交媒介
长篇连载,人生30年(二):职场菜鸟被开除
昆山的故事基本结束了,让我印象深刻的还有就是当时刚到那里的包子,那是真的贵,3块钱一个的肉包,还难吃。
艾小仙
2021/03/02
4010
长篇连载,人生30年(二):职场菜鸟被开除
三年出版了两本书,这是我的时间管理实践
在这三年里面,我经历了情绪的起起伏伏,我实践了多种不同的时间管理方法——有效的,无效的,前期立竿见影却后劲不足的,前期效果一般但越用越顺手的……并成功找到了最适合自己的方法。
青南
2019/03/18
4540
三年出版了两本书,这是我的时间管理实践
我的简书一月记:数据可视化
截止前天,来简书正好一个月。20170730 注册了账号,当晚发布处女作《爬取张佳玮138w+知乎关注者:数据可视化》,从而开启了《python爬虫和数据可视化》系列的写作。
古柳_DesertsX
2018/08/21
4550
我的简书一月记:数据可视化
GMT UTC CST ISO 夏令时 时间戳,都是些什么鬼?
日期/时间的处理是平时开发中非常常见的场景,若只是简单的格式化场景那就还好,一旦涉及到时区、跨地域跨时区时间转换场景,甚至当还有GMT时间、UTC时间等一堆概念堆上来的时候,总是心理发虚,招架不住。
YourBatman
2022/03/08
3.5K0
GMT UTC CST ISO 夏令时 时间戳,都是些什么鬼?
GMT UTC CST ISO 夏令时 时间戳,都是些什么鬼?
日期/时间的处理是平时开发中非常常见的场景,若只是简单的格式化场景那就还好,一旦涉及到时区、跨地域跨时区时间转换场景,甚至当还有GMT时间、UTC时间等一堆概念堆上来的时候,总是心理发虚,招架不住。
YourBatman
2021/01/19
3.4K0
GMT UTC CST ISO 夏令时 时间戳,都是些什么鬼?
小米122人获1.2亿十年股股权激励,人均2440多万;字节跳动8月1日起取消大小周;原阿里钉钉CEO将离职创业 | Q资讯
整理 | 褚杏娟 字节跳动 8 月 1 日起取消大小周;原阿里钉钉 CEO 无招将离职创业;腾讯意图合并虎牙斗鱼遭反垄断调查;小米 122 人获 1.2 亿十年股股权激励,平均每人 2440 多万元人民币;董明珠:格力将引进鸿蒙操作系统;中国移动成立芯片公司,独立运营,5 年前已投入研发;五角大楼取消授予微软的云计算合同;传 iPhone 13 系列无线充电线圈更大,为反向无线充做好准备...... 科技公司  字节跳动 8 月 1 日起取消大小周 7 月 9 日,字节跳动宣布,将于 2021 年 8 月
深度学习与Python
2023/04/01
4920
小米122人获1.2亿十年股股权激励,人均2440多万;字节跳动8月1日起取消大小周;原阿里钉钉CEO将离职创业 | Q资讯
Object类、常用API
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/100195.html原文链接:https://javaforall.cn
全栈程序员站长
2022/06/29
1.9K0
Object类、常用API
Linux应用开发【第十章】RTC应用开发
​ “RTC”的英文全称是Real-Time Clock,翻译过来是实时时钟芯片。实时时钟芯片是日常生活中应用最为广泛的电子器件之一,它为人们或者电子系统提供精确的实时时间。实时时钟芯片通过引脚对外提供时间读写接口,通常内部带有电池,保证在外部系统关电时,内部电路正常工作,时间正常运行。不同的时钟芯片内部机制不一样,时间数据存储格式、读写操作方式也不一样,Linux系统和驱动封装了不同时钟芯片的操作细节,为应用程序提供了统一的时间操作接口。
韦东山
2021/12/15
2.1K0
【愚公系列】2021年12月 Python教学课程 36-Django框架之模板
标签block:用于在父模板中预留区域,留给子模板填充差异性的内容,名字不能相同。 为了更好的可读性,建议给endblock标签写上名字,这个名字与对应的block名字相同。父模板中也可以使用上下文中传递过来的数据。
愚公搬代码
2022/12/01
7640
【愚公系列】2021年12月 Python教学课程 36-Django框架之模板
Java 编程问题:三、使用日期和时间
本章包括 20 个涉及日期和时间的问题。这些问题通过Date、Calendar、LocalDate、LocalTime、LocalDateTime、ZoneDateTime、OffsetDateTime、OffsetTime、Instant等涵盖了广泛的主题(转换、格式化、加减、定义时段/持续时间、计算等)。到本章结束时,您将在确定日期和时间方面没有问题,同时符合您的应用的需要。本章介绍的基本问题将非常有助于了解日期-时间 API 的整体情况,并将像拼图中需要拼凑起来的部分一样解决涉及日期和时间的复杂挑战。
ApacheCN_飞龙
2022/07/11
5.5K0
2023年11月12日阿里云产品全面故障的思考
2023年11月12日,阿里云产品因为某些故障,全线都受到影响。是的,双十一的第二天,我的购物车还没清空,阿里云就不让我买了。云产品全面故障,影响之大一个大铁锅都装不下。之所以阿里云故障受到大家这么关注,一方面是阿里云投入多年技术领先,国内 IaaS 领导者,另外一方面是阿里云用户量大影响也大。
laofo
2023/11/17
4990
2023年11月12日阿里云产品全面故障的思考
学习SQLite之路(四)
20160621 更新 参考: http://www.runoob.com/sqlite/sqlite-tutorial.html 1. SQLite   alter命令:不通过执行一个完整的转储和数据的重载来修改已有的表。 可以使用 ALTER TABLE 语句重命名表,使用 ALTER TABLE 语句还可以在已有的表中添加额外的列。 在 SQLite 中,除了重命名表和在已有的表中添加列,ALTER TABLE 命令不支持其他操作(在其他数据库中可以改变表中列的数据类型,删除表中的列) (1)基本语
xcywt
2018/01/11
1.9K0
学习SQLite之路(四)
机器人教父:自动驾驶30年内能上路,实现通用人工智能还要300年
Rodney Brooks被誉为机器人教父,在机器人领域无疑是最权威的人之一。但他还有一个头衔:坏小子。
新智元
2019/06/10
5240
在 2021 年写一本 C++ 图书是一种什么体验?
以下内容来自《C++服务器开发精髓》一书的作者张远龙~~ ---- 亲爱的各位读者,我的新书《C++ 服务器开发精髓》终于终于终于与大家见面了,图书如下: 图书的封面设计很精美,当然内容一定不负众望。因出版社老师要求提供一张照片放到封面上,所以今年6 月1日儿童节去拍了一张,照片拍出来放在下面大家自己看吧。 人到中年,生活不易,没有少年时代那种懵懂与青涩,多了一份厚实与坚定了。一些想做的事情却一步步把它做成了,成为现实。昔日戏言身后事,明朝都到眼前来。所以,梦想还是要有的,还是要坚持的,即使这世界有那
博文视点Broadview
2023/05/06
2980
在 2021 年写一本 C++ 图书是一种什么体验?
TypeScript--deno前置学习
(1)Node与Deno 的区别:Node 可以工作,而 Deno 不行,Deno 只是一个原型或实验性产品。
wfaceboss
2019/04/08
2.6K0
TypeScript--deno前置学习
闯越顶岗实习app自动签到小脚本 python
今天下午摸鱼的时候突发奇想搞个顶岗实习签到小脚本玩玩,说干就干,造就完了 下面是完整的代码,基本改改就能用了,需要在同级目录下准备一个1.txt文件,存放用户名和密码, 用空格分隔 账号和密码 例子如下 username password 如果不需要邮件通知可以直接在最后面吧email函数注释即可 其中re用于提取用户以及签到状态记录日志邮件通知 calendar用于获取月份最后一天用于月报提交 random 随机抽取签到留言 time 计时 没了 # -*- coding: utf-8 -*-
kirin
2020/12/07
3.3K1
Power Query 真经 - 第 5 章 - 从平面文件导入数据
作为一名数据专家,日常工作很可能都是在使用数据之前对其进行导入、操作和转换。可悲的是,许多人都没有机会接触到拥有精心策划过的数据的大数据库。相反,被不断地喂食 “TXT” 或 “CSV” 文件,并且在开始分析之前,必须经历将它们导入到 Excel 或 Power BI 解决方案的过程。对用户来说,重要的商业信息往往是以以下格式存储或发送给用户的。
BI佐罗
2022/05/17
5.3K0
Power Query 真经 - 第 5 章 - 从平面文件导入数据
告别jodatime!拥抱Java8日期时间类LocalDate、LocalDateTime详解
例如,现有的类(例如java.util.Date和SimpleDateFormatter)是非线程安全的,从而导致用户潜在的并发问题,这不是一般开发人员在编写日期处理代码时会期望处理的问题。 一些日期和时间类还表现出相当差的API设计。例如,年份java.util.Date从1900开始,月份从1开始,天从0开始,这不是很直观。
JavaEdge
2022/11/30
1.5K0
告别jodatime!拥抱Java8日期时间类LocalDate、LocalDateTime详解
推荐阅读
相关推荐
如果你在代码中用了YYYY-MM-DD那么要注意了!
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文