如何从YYYY-MM-DD HH中的Oracle数据库中检索日期变量:MM:SS格式并以相同格式以日期变量存储



我想从Oracle数据库中检索日期对象,并将其存储在日期变量中以同一格式中的Java?

ps;变量的数据类型应仅是日期,但需要具有格式yyyy-mm-dd HH:mm:ss。

Date类将在内部存储日期作为长整数。如果要将其转换为字符串,则可以使用DateFormat

DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateFormatted = df.format(new Date());
Date date = df.parse(dateFormatted);

如果正确设置了数据库,则应只需将日期列检索到日期变量中即可。格式化注意事项应在数据库访问级别上不适用;他们应该是非问题的。

格式是为了显示给用户的日期。

格式化也是各种工具的操作某种格式,或者您的日期变量具有一定的格式。但是他们没有。

问题从数据库级别错误地完成时开始。如果数据库列实际上不是时间数据类型,而是CHAR类型的类型,那么格式化当然会扮演角色。但是,我们并没有谈论"从Oracle数据库中检索日期对象",而是在谈论从数据库中检索字符串并将其转换为日期。但是,您没有什么都不告诉我们桌子的结构,所以我们不能推测这一点。

因此,有了您提供的信息,正确的答案只是"只需将日期列获取到日期变量中"。如果您需要其他答案,请提供更多信息。

根据注释,您可能需要创建一个以指定格式打印值的CustomDate类:

public class CustomDate extends Date{
    private static final DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    @Override
    public String toString() {
        return df.format(this);
    }
}

而不是创建日期实例,而是尝试使用定制。它在您的代码中等效。

最新更新