如何将当前日期时间的格式设置为不同的格式?

我使用以下代码检索当前日期和时间,然后使用以下方法将其添加到表中。

Change 2013-07-29 23:20:34.0 to 29th July 2013, 11:20 PM 

约会时间

  public Date getCurrentDateTime() { SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = new Date(); System.out.println("current:" + dateFormat.format(date)); return date; } 

过冬

 @Temporal(javax.persistence.TemporalType.TIMESTAMP) public Date getCurrentDateTime() { return date; } 

要将日期更改为序号,您需要使用以下后缀 。 看看这个链接也是如此

 DD + TH = DDTH result >>>> 4TH OR to spell the number add SP to the format DD + SPTH = DDSPTH result >>> FOURTH 

还可以使用fmt库格式化jsp页面上的日期

  <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>  

Date对象没有格式。 ( java.sql.Datejava.util.Date都没有。)数据库只是将它存储在表中,无论它选择什么样的本机表示forms(几乎肯定不是文本),当你检索数据时,由决定如何格式化它你希望。

要更改System.out.println使用的格式,只需更改传递给SimpleDateFormat构造函数的模式 – 有关详细信息,请参阅文档。 请注意,您应该考虑您感兴趣的时区和Locale – 例如,不同区域设置之间的月份名称不同,并且不同的区域设置也具有不同的预期格式。 (即使在同一种语言中,也有不同的惯例。)

你会发现使用SimpleDateFormat很难处理“第29个”的“th” – 我不相信它支持序数。 这个问题可能对你有帮助。 (这会是丑陋的代码,请注意 – 如果可能,我建议更改格式以删除序号。)

有类似的东西?

对于hibernate

 SimpleDateFormat format = new SimpleDateFormat("dd-MM-yyyy"); String dateBufferString = format.format(date); Date dateBuffer; try { dateBuffer = format.parse(dateBufferString); System.out.println("Database Date Format :" + date); System.out.println("(dd-MM-yyyy) date: " + format.format(date)); System.out.println("dateBufferSTring " + dateBufferString); System.out.println("dateBuffer: " + dateBuffer);