0

嗨,我需要将毫秒转换为日期。MYSQL 也应该可以接受日期。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US);
GregorianCalendar calendar = new GregorianCalendar(TimeZone.getTimeZone("US/Central"));
calendar.setTimeInMillis(System.currentTimeMillis());
System.out.println("GregorianCalendar -" + sdf.format(calendar.getTime()));

我尝试了这个例子,但在这里“sdf.format(calendar.getTime()”这个方法给出了以下格式的字符串。“yyyy-MM-dd HH:mm:ss”

但我也希望 Date 对象采用上述格式(yyyy-MM-dd HH:mm:ss)。

那么如何将其转换为日期格式。

请帮我解决这个...

提前谢谢... :)

4

5 回答 5

2

我们不会将日期或时间戳作为字符串存储在数据库中。因此,以特定格式保存是没有意义的。您只需将它们保存为 SQL Timestamp,然后在需要显示或需要它们的字符串表示时使用日期格式函数(无论是在Java中还是在后端使用PL/SQL )对其进行格式化。

所以,java.sql.Timestamp用作

Timestamp dbDateTime = new java.sql.Timestamp(System.currentTimeMillis()); // or
Timestamp dbDateTime = new java.sql.Timestamp(calendar.getTimeInMillis());

编辑 如果 DOB 字段是类型,java.util.Date则使用

Timestamp dbDateTime = new java.sql.Timestamp(dob.getTime());

如果字段是类型java.sql.Date,那么如果后端列也是类型,则您可以按原样保存它,DATE或者使用上面相同的代码将其转换为Timestamp第一个。

于 2013-07-05T13:41:19.510 回答
0

日期对象没有格式。这就是为什么我们需要 DateFormat 对象来格式化它们。

于 2013-07-05T13:39:12.363 回答
0

实际上,您不能拥有特定格式的日期对象。Java 在内部管理日期对象。但是,您可以在需要时使用SimpleDateFormat. 顺便说一句,以特定格式拥有 Date 对象是没有意义的。

于 2013-07-05T13:40:22.507 回答
0
public static Date getDate(long milliSeconds, String dateFormat)
{
DateFormat formatter = new SimpleDateFormat(dateFormat);

 Calendar calendar = Calendar.getInstance();
 calendar.setTimeInMillis(milliSeconds);
 DateFormat formatter2 = new SimpleDateFormat(dateFormat);
 Date d = null;
try {
    d = (Date)formatter2.parse(formatter.format(calendar.getTime()));
    System.out.println(formatter.format(calendar.getTime()));
} catch (ParseException e) {
    e.printStackTrace();
}
 return d;
}

尝试像这样访问它

System.out.println(getDate(82233213123L, "yyyy-MM-dd HH:mm:ss"));

输出应该是 Thu Aug 10 00:03:33 IST 1972

于 2013-07-05T13:45:07.990 回答
0
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US);
GregorianCalendar calendar = new GregorianCalendar(TimeZone.getTimeZone("US/Central"));
calendar.setTimeInMillis(System.currentTimeMillis());
String date =  sdf.format(calendar.getTime());
Date dateObject = sdf.parse(date);

“dateObject”将为您提供所需格式的日期。

于 2013-07-05T13:49:39.990 回答