使用 Java 和 Spring 在 Oracle 数据库中插入 UTC/GMT 日期

2024-03-27

当我插入new Date()对象使用jdbcTemplate到Oracle数据库,我可以看到jdbc驱动程序或Spring jdbcTemplate插入Date使用本地 JVM 偏移量。

SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy");
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
Date timeZoneDate = sdf.parse("09-SEP-1987");

例如,当我插入在 GMT 中创建的日期对象时,如果 JVM 时区是美国,则会在 Oracle 数据库中插入 08-SEP-1987。


Neither java.util.Date也不是甲骨文Date存储时区信息。在您的情况下,Jdbc 驱动程序使用 JVM 时区转换您的日期。您可以使用以下选项之一:

  • 如果您使用的是PreparedStatement,则可以使用setDate(int parameterIndex, Date x, Calendar cal)指定方法Calendar在 UTC 时区。
  • 春季用jdbcTemplate而不是插入Date对象,插入Calendar with UTC时区
  • TimeZone.setDefault(TimeZone.getTimeZone("GMT"))可以在 JVM lvl 上设置
  • Use -Duser.timezone=GMT在 JVM 启动时
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Java 和 Spring 在 Oracle 数据库中插入 UTC/GMT 日期 的相关文章

随机推荐

  • MySQL 连接器 C++ - 无效指针

    我正在尝试使用 MySQL C 连接器连接到数据库 我已经添加了库 并且源代码可以使用所有必要的 include 语句正确编译 我正在使用的代码如下 include
  • 逆斐波那契算法?

    对于任意 n 计算 F n 的方法有数十种 其中许多方法都具有很高的运行时间和内存使用率 然而 假设我想问相反的问题 给定 F n n gt 2 n 是多少 n gt 2 限制存在 因为 F 1 F 2 1 并且没有明确的逆 解决这个问题最
  • 将 Single> 转换为 Observable

    Goal I get a Single
  • 画家难题 - 从第一原理进行算法估计

    这个问题是基于从2001年开始 A guy 找到了一份街头油漆工的工作 在路中间画虚线 第一天他完成了 300 码 第二天完成了 150 码 第三天甚至更少 老板很生气 要求一个解释 我无能为力 那家伙说 我每天都离油漆罐越来越远 我的问题
  • 如何删除用户注册/登录表单?

    我的网站不需要用户登录功能 只有部分用户需要发布新节点 如何删除 Drupal 中的用户注册和登录表单 虽然从技术上讲可以删除登录功能 但您不应该这样做 因为那样您的管理员将永远无法登录该网站 为了删除注册功能 您只需浏览到admin us
  • 是否有适用于 Microsoft Access 的 64 位驱动程序?

    java sql SQLException Microsoft ODBC Driver Manager 指定的 DSN 包含驱动程序和应用程序之间的体系结构不匹配 当我尝试使用 jdbc 从 eclipse 项目连接到 Microsoft
  • 将 IBM Lotus Notes 文件转换为文本

    如何将 nsf Lotus 文件转换为文本文件 我想编写一个java程序来读取我系统上的 nsf文件 我已经简单地尝试过 但它显示非英语字符 他们有什么方法可以正常访问它们 EDIT 该代码位于 net中并使用任何服务器的会话 我只想通过j
  • 检查 C 中是否存在文件[重复]

    这个问题在这里已经有答案了 我正在尝试在 C 应用程序中打开文件 在尝试读取文件之前如何检查文件是否存在 尝试打开它 FILE file file fopen file name r if file file exists and can
  • Numpy - 将 x,y 坐标的二维数组转换为坐标之间距离的平面数组

    我想使用 numpy 将 x y 坐标的二维数组转换为每个坐标之间的距离的平面数组 请注意 第一对 x y 坐标应保留在输出数组中 作为稍后重建坐标的参考 此过程的目的是减小数组的大小 以提高网络共享的速度 例如 input 8081441
  • 如何将数组中的数字从低到高排序

    我正在尝试将一系列价格从低到高排序 我可以让它工作 但不是我想要的方式 长话短说 排序器将数字按如下顺序排列 100 10900 200 290 而不是像这样排序 100 200 290 10900 这是我正在执行此操作的代码 void f
  • 如何从命令行使用 PyCharm 作为 GIT diff 工具?

    On the PyCharm 帮助网站 https www jetbrains com pycharm help running pycharm as a diff or merge command line tool html我发现您可以
  • Comparator 是一个类型类吗?

    我一直在阅读 Scala 中的类型类 并认为我已经很好地掌握了它 直到我想起了 Java 的类型类java util Comparator 如果我理解正确的话Ordering是类型类的原型示例 我能想到的唯一区别Comparator和一个实
  • React:如何读取音频文件并在上传前提供预览?

    我正在处理音频文件上传 并希望在上传开始之前音频文件可用于音频播放器 1 用户选择音频文件 2 音频文件可供收听 作为预览 3 如果一切正常 用户按下提交 我完成了第一步 基本上创建了一个文件输入 有效 但是 当我将所选音频文件链接到音频播
  • 从3.4升级后如何在python3.5中使用pip?

    我在 Ubuntu 上 我有 python2 7 它是预安装的 python3 4 今天之前使用过 和 python3 5 我今天升级到的 并行安装 他们自己都工作得很好 但是 我想用pip安装一些软件包 我不知道如何为我的 3 5 安装执
  • 单击 TextView 中的 HTML 链接会引发奇怪的 AndroidRunTimeException

    我正在从我的网站检索一些 HTML 并将其放入 TextView 中 此 HTML 可能包含指向网页 电子邮件等的锚标记 我试图使这些链接可单击 以便当用户单击它时 默认浏览器会打开该网页 我是按照这个答案的说明来做到这一点的 如何使 Te
  • Pandas 函数:DataFrame.apply() 运行顶行两次[重复]

    这个问题在这里已经有答案了 我有两个版本的函数使用Pandas for Python 2 7去经历inputs csv 逐行 第一个版本使用Series apply on a single column 并按预期遍历每一行 第二个版本使用D
  • 使用 cURL 传递 $_POST 值

    你如何通过 POST使用值到页面cURL 应该可以正常工作 data array name gt Ross php master gt true You can POST a file by prefixing with an for
  • jinja2 模板未找到且内部服务器错误

    Python代码 from flask import Flask render template app Flask name app route def hello return render template testing html
  • 哪一种使用起来更安全? uuid、binascii.hexlify(os.urandom()) 还是 random.SystemRandom()?

    我想创造独一无二的
  • 使用 Java 和 Spring 在 Oracle 数据库中插入 UTC/GMT 日期

    当我插入new Date 对象使用jdbcTemplate到Oracle数据库 我可以看到jdbc驱动程序或Spring jdbcTemplate插入Date使用本地 JVM 偏移量 SimpleDateFormat sdf new Sim