我的SQL数据库中有一个DateTime字段,当我尝试在JSP页面中显示它并使用“ dd-MM-yyyy hh:mm:ss”对其进行格式化时,它仅正确显示了日期部分。例如,对于存储在数据库中的日期“ 2012-01-19 12:13:48”,它显示为“ 19-01-2012 12:00:00”。可能是什么问题?
码:
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss"); sdf.format(rs.getDate("comment_date")); //rs -> ResultSet
从javadoc中获取java.sql.Date:
java.sql.Date
为了符合SQL DATE的定义,必须通过将与实例相关联的特定时区中的小时,分钟,秒和毫秒设置为零,来“标准化” java.sql.Date实例包装的毫秒值。 。
为了同时保留时间信息,您应该使用java.sql.Timestamp。换句话说,更改rs.getDate()为rs.getTimestamp()。
java.sql.Timestamp
rs.getDate()
rs.getTimestamp()