首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Java SQL日期从yyyy-MM-dd转换为dd MMMM yyyy格式的最佳方法

问将Java SQL日期从yyyy-MM-dd转换为dd MMMM yyyy格式的最佳方法
EN

Stack Overflow用户
提问于 2010-07-05 18:17:32
回答 4查看 50.3K关注 0票数 3

有没有一种简单的方法将Java SQL日期从yyyy-MM-dd格式转换为dd MMMM yyyy格式?

我可以将日期转换为字符串,然后对其进行操作,但我更愿意将其保留为Java SQL日期。在我需要这样做的时候,数据已经从MySQL数据库中读取了,所以我不能在那里做更改。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-07-05 18:23:07

像java.sql.Date和java.util.Date ( java.sql.Date是它们的子类)这样的对象没有自己的格式。使用java.text.DateFormat对象以特定格式显示这些对象,由DateFormat (而不是Date本身)决定格式。

例如:

代码语言:javascript
复制
Date date = ...;  // wherever you get this
DateFormat df = new SimpleDateFormat("dd MMMM yyyy");
String text = df.format(date);
System.out.println(text);

注意:在不使用DateFormat对象的情况下打印Date对象时,如下所示:

代码语言:javascript
复制
Date date = ...;
System.out.println(date);

然后,将使用某种默认格式对其进行格式化。但是,该默认格式不是您可以更改的Date对象的属性。

票数 11
EN

Stack Overflow用户

发布于 2010-07-05 18:28:18

如果是为了演示,你可以直接使用SimpleDateFormat:

代码语言:javascript
复制
package org.experiment;

import java.sql.Date;
import java.text.SimpleDateFormat;

public class Dates {
    private static SimpleDateFormat df = new SimpleDateFormat("MMMM yyyy");

    public static void main(String[] args){

        Date oneDate = new Date(new java.util.Date().getTime());
        System.out.println(df.format(oneDate));
    }

}
票数 6
EN

Stack Overflow用户

发布于 2010-07-05 18:22:26

不清楚您所说的"Java SQL日期“是什么意思。如果你的意思是像在java.sql.Date中那样,那么它实际上没有字符串格式...这只是个数字。要以特定的方式格式化它,请使用类似java.text.SimpleDateFormat的内容。

或者,将其转换为Joda;与内置的DateTime相比,Joda Time是一个更好的日期和时间API。例如,SimpleDateFormat不是线程安全的。

(请注意,java.sql.Date比普通的java.util.Date具有更高的精度,但在这里看起来您不需要这样的精度。)

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3178690

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档