gpt4 book ai didi

java - 从 ResultSet 读取日期作为字符串时的默认 JDBC 日期格式

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:02:47 26 4
gpt4 key购买 nike

我正在查看一些基本上执行以下操作的代码:

ResultSet rs = ps.executeQuery();
String myDateStr = rs.getString("MY_DATE"); //field is of type Date
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss'.0'");
Date myDate = sdf.parse(myDateStr);

在某些环境中,最后一行有效,而在其他环境中,它会抛出一个无法解析的日期异常。看起来在某些系统上默认日期格式是 2013-01-25 00:00:00.0,而在其他系统上是 2013-01-25 00:00:00。JVM、操作系统和 Oracle 版本在环境之间是不同的(尽管都使用 Oracle 并在 unix 变体上运行)。

更改代码可能很复杂。我想知道是否可以设置一个环境变量或类似变量来使从 rs.getString() 返回的日期格式保持一致?

最佳答案

试试这个:

ResultSet rs = ps.executeQuery();

Date myDate = rs.getDate("MY_DATE");

或者这个:

ResultSet rs = ps.executeQuery();
String myDateStr = rs.getString("MY_DATE");
Date myDate = valueOf(myDateStr);

更多关于日期:http://docs.oracle.com/javase/7/docs/api/java/sql/Date.html
有关结果集的更多信息:http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html

关于java - 从 ResultSet 读取日期作为字符串时的默认 JDBC 日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14700962/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com