gpt4 book ai didi

java.sql.Date (YYYY-MM-DD) 到 java.util.Date (DD-MMM-YYYY) 转换

转载 作者:行者123 更新时间:2023-12-01 11:55:16 27 4
gpt4 key购买 nike

需要建议如何将 java.sql.Date (YYYY-MM-DD) 发送到 java.util.Date (DD-MMM-YYYY)。

类 java.sql.Date 被设计为仅携带日期。我有一个表,其中 EXPIRY_DATE 列为 DATE 数据类型。

当我执行以下操作时

rs.getDate("EXPIRY_DATE")

它以 YYYY-MM-DD 格式给出输出。例如,2015-04-05

我有一个以下 Java bean

class ABC {
java.util.Date expiryDate;
}

我想将上面的 bean 作为 JSON 对象返回到 JSP 页面 View 。由于我们使用 Spring REST Controller (@RestController 服务),我编写了以下行,

@RestController
@RequestMapping("/url")
class someClass {

@RequestMapping("/url")
Object someWebServiceMethod() {
ABC object = new ABC();
object.setExpiryDate( resultSet.getDate("EXPIRY_DATE") );
return object;
}
}

我的网络服务返回 java.sql.Date 格式的日期,如 YYYY-MM-DD。

我想将 DD-MMM-YYYY 格式的输出发送到 JSP 页面 View 。

如何转换相同的内容?

我尝试过以下代码,

注意:以下代码与我的上述问题无关。我只需要上述 @RestController spring 代码的解决方案

public static void convertDate() {
String input = "2013-09-14";
// DateFormat format = DateFormat.getInstance();
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-mm-dd");
SimpleDateFormat format2 = new SimpleDateFormat("dd-MMM-yy");
Date date;
try {
date = format1.parse(input);
String temp = format2.format(date);
Date outDate = format2.parse(temp);
System.out.println(outDate);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

但它给出的输出为 Mon Jan 14 00:00:00 IST 2013

我想发送日期,格式为 dd-MMM-YYYY,例如 2015 年 2 月 28 日

目前,我的 @RestController 代码返回 java.sql.Date 格式,如 2015-02-28。但我希望是 2015 年 2 月 28 日。

请告知如何将 java.sql.Date (YYYY-MM-DD) 转换为 java.util.Date (DD-MMM-YYYY)

谢谢

最佳答案

I want to send the output in DD-MMM-YYYY format to the JSP page view.

然后您需要使用 SimpleDateFormat 来执行此操作。目前您正在使用 Date.toString() 的结果,并忽略 temp ,它应该已经有正确的结果。

但是,您根本不需要解析 java.sql.Date - 您可以直接将其传递给 DateFormat.format:

java.sql.Date date = /* get date from database */; 
// TODO: Specify time zone and locale
SimpleDateFormat format = new SimpleDateFormat("dd-MMM-yyyy");
String formattedDate = format.format(date);

或者,我怀疑 JSP 已经有一种机制允许您将日期直接传递给 JSP 本身,并在那里指定输出格式...这实际上是一种尽可能接近表示层的转换.

关于java.sql.Date (YYYY-MM-DD) 到 java.util.Date (DD-MMM-YYYY) 转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28505539/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com