2012-02-18 73 views
1

我的代码:mysql的日期时间日历

Calendar c = Calendar.getInstance();  
c.setTime(res.getDate("my_date")); //res is ResultSet 

System.out.println(c.getTime()); 
System.out.println(res.getString("my_date")); 

输出:

Thu Oct 11 00:00:00 IST 2012 
2012-10-11 02:50:00.0 

在日历中,不考虑时间的一部分。我使用了日历,因为我必须做一些比较。

为什么时间部分被省略?

回答

2

你应该使用类似:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
out.println(sdf.format(rs.getTimestamp("your_date_field").getTime())); 

顺便说一句,你必须创建一个适合你的SQL日期格式构造SimpleDateFormat。

+0

输出:“2012-10-11 24:00:00”。仍然是时间部分不起作用。 – 2012-02-18 11:00:49

+0

哎呀看到我的编辑,你必须使用getTimeStamp,getDate只返回日期(没有时间)的一部分。 – 2012-02-18 11:13:20