【问题标题】:How to set date pattern (date format) for an entire application?如何为整个应用程序设置日期模式(日期格式)?
【发布时间】:2011-06-06 10:17:38
【问题描述】:

在我的 Web 应用程序中,我目前正在使用自定义 DateUtil 类将 java.util.Date 转换为字符串,反之亦然。我这样做只是为了转换为默认模式dd/MM/YYYY。这是整个应用程序需要的唯一日期格式。现在有很多输入字段,其中日期值是使用日历选择的。我目前正在使用DateUtil 包将这个String 值转换为java.util.Date,然后再发布到数据库,然后在jsp 中显示这个日期时,我正在使用jstl <fmt:formateDate> 标签将格式转换为dd/MM/YYYY

有什么方法可以为网络应用程序设置默认日期模式。至少new Date().toString() 应该以默认(dd/MM/YYYY)格式打印。

【问题讨论】:

    标签: web-applications date jakarta-ee jstl


    【解决方案1】:

    如果我理解正确的话,现在是这样的:

    1. 您的用户向您的 通过表单将服务器作为字符串 字段。
    2. 您将字符串解析为日期 对象(我猜你用 SimpleDateFormat 或类似)。
    3. 显示 Date 对象的日期 作为字符串返回给用户, 使用 JSTL 标签格式化。

    你希望它变成这样:

    1. 和以前一样
    2. 和以前一样
    3. 您使用 Date 对象的 toString() 方法向用户显示 Date 对象的日期。

    我想说这些在工作上几乎相似,但我也倾向于在显示日期时使用 JSTL 格式化程序。

    我建议您继续使用当前的实现。只需将您的默认日期模式作为常量移动到一个类中:

    public class WebConstants {
        public static final String DEFAULT_DATE_FORMAT = "dd/MM/yyyy";
    }
    

    并将其与格式一起使用:

    <fmt:formatDate value="${mybean.date}" pattern="<%=WebConstants.DEFAULT_DATE_PATTERN%>" />
    

    【讨论】:

    • 这正是我现在正在做的。默认日期格式在我的DateUtil 课程中给出。我认为可能有一种方法可以修复应用程序的默认日期格式,而不是通过扩展java.util.Date,而是通过设置一些系统属性。感谢您的回复。
    猜你喜欢
    • 1970-01-01
    • 2015-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多