2

我在 JAVA 中管理将日历存储到 mysql DATETIME 字段中来获取这个值

entry.date = Calendar.getInstance(TimeZone.getTimeZone("UT"));
entry.date.setTime(rs.getDate(DBBLogEntries.entDate));

entry.date 是 java.util.Calendar 在数据库中的值是这样的:'2012-07-07 07:18:46' 我将所有日期值存储在数据库中的唯一时区中。准备好根据请求发出的国家/地区进行增加或减少时间所需的所有额外工作。

问题是它带来了日期,但似乎没有给我带来时间。请问有什么建议吗?提前致谢。

4

4 回答 4

3

可能是因为 Java 的日期格式与mysql format( YYYY-MM-DD HH:MM:SS)不同

访问链接:

http://www.coderanch.com/t/304851/JDBC/java/Java-date-MySQL-date-conversion

您可以SimpleDateFormat如下使用。

java.util.Date dt = new java.util.Date();

java.text.SimpleDateFormat sdf = 
     new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String dateTime = sdf.format(dt);
于 2012-07-12T05:43:44.960 回答
1

您应该timestampResultSet对象中读取 a 。

java.sql.Timestamp ts = rs.getTimestamp( DBBLogEntries.entDate );

它返回一个Timestamp包含日期和时间的实例。

于 2012-07-12T06:17:58.153 回答
0

不要使用 Java.util.Date,使用 Java.sql.Date。

于 2012-07-12T05:33:50.557 回答
0

您使用的是 MySql DATE 类型吗?这不会保留时间分量。

http://dev.mysql.com/doc/refman/5.5/en/datetime.html

或者,您如何从数据库中检索日期?

于 2012-07-12T05:33:59.230 回答