首页 > 解决方案 > 在日期字段中不能使用超过“2038”的年份:Java

问题描述

在我的应用程序中保存日期超过 2038 年时,我遇到了一个问题,在 jsp 页面上,我从日历中获取输入,例如 -

registry.byId('endDateCal').set('value', dojo.date.locale.parse('<c:out value="${empty taskForm.endDate ? taskForm.defaultDate : taskForm.endDate}"/>', {     datePattern: '<%=datePattern%>',     selector: "date"   }));

datePattern 我在我的 jsp 页面上设置,比如

   SimpleDateFormat dateFormat = (SimpleDateFormat)DateFormat.getDateInstance(DateFormat.SHORT, I18nUtility.getLanguageLocaleForCurrentUser());

   String datePattern = dateFormat.toPattern();

当这个值发送到我的 servlet 时,我在过去获得了价值,例如,如果我将日期设置为 2040 年 9 月 30 日,那么它将向 servlet 9/30/1941 发送日期值。

我看到了 2038 年的问题 2038 年的问题,但不是我的情况,因为我可以在 2038 年设置日期,但不能设置超过 2038 年,我也检查了这个但没有帮助。

注意寻找 jdk 7 兼容的解决方案

标签: javadatedatetimejava-7

解决方案



推荐阅读