在 JPA 中保留 Java 8 LocalTime

2024-05-24

我的一个实体中有一个 Java 8 LocalTime 。

private final LocalTime departureTime;

它是一个带有 Spring Data Rest 的 Spring Boot 1.3.6 应用程序。我使用 Jsr310JpaConverters 来支持 JPA 的 Java 8 时间模块。

当我将 LocalTime 变量保存到 MySql 时,保存 LocalTime 变量的日期也将保留到数据库中。假设如果我在 2016 年 1 月 1 日保存 18:00:00 ,它会保留为 2016-01-01 18:00:00 。我只想节省时间。即 18:00:00 。有什么解决办法吗?

提前致谢


此示例运行于:java 8、JPA 2.1、Hibernate 4.3.5。

如果您使用 JPA 2.1 和 Hibernate 5.0 版本的早期版本,则可以实现 JPA AttributeConverter:

import java.sql.Time;
import java.time.LocalTime;

import javax.persistence.AttributeConverter;
import javax.persistence.Converter;

/**
 * Converter to persist LocalDate and LocalDateTime with 
 * JPA 2.1 and Hibernate older than 5.0 version
 **/

@Converter(autoApply = true)
public class LocalTimeAttributeConverter implements AttributeConverter<LocalTime, Time>{

    @Override
    public Time convertToDatabaseColumn(LocalTime localTime) {
        return (localTime == null ? null : Time.valueOf(localTime));
    }

    @Override
    public LocalTime convertToEntityAttribute(Time time) {
        return (time == null ? null : time.toLocalTime()); 
    }

}

或者,如果您使用 Hibernate 5.0(或更高版本),您可以添加 maven 的依赖项:

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-java8</artifactId>
    <version>5.1.0.Final</version>
</dependency>

注释 -> 实体的映射是相同的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 JPA 中保留 Java 8 LocalTime 的相关文章

随机推荐

  • 应用程序处于中断模式。您的应用程序已进入中断状态,

    我发现自己遇到了同样的问题here https stackoverflow com questions 36204009 disable break mode page in vs2015 我在 dll 中使用 Windows 窗体 这是针
  • Rails 路线、url 和子域

    我的 ruby 应用程序分为不同的命名空间 例如 免费 free domain com 专业版 pro domain com vip vip domain com 在路由文件中看起来像这样 namespace free do match h
  • 在Vue.js 3中添加全局变量

    如何在 Vue js 3 中添加全局变量 在 Vue js 2 中 我们在main js file Vue prototype myGlobalVariable globalVariable 最直接的替换就是app config globa
  • Type.MakeByRefType 的反义词是什么

    The Type MakeByRefType http msdn microsoft com en us library system type makebyreftype aspx NET 中的方法返回类型的 by ref 版本 例如传递
  • 存储 FCM 的令牌

    我正在尝试将我的令牌存储在我的云数据库中 我稍后将在云函数中使用此令牌 以便向已添加为好友的用户发送通知 然而 推送设备令牌不起作用 因为用户未经授权 授权后我无法保存它 因为令牌是在安装应用程序时生成的 private static fi
  • 对不同的数据库和表进行一次性查询

    我有一个 Rails 应用程序 侧面有一个 WordPress 博客 完全单独位于 blog 客户想要 Rails 应用程序主页上的最新博客文章 因此我需要对 word press 数据库进行一次性 mysql 查询 我将如何在 Rails
  • 终止 Julia 数组理解中的 For 循环

    我在 Julia 中有以下代码行 X i i 2 for i in 1 100 if i 2 5 0 基本上 它返回一个元组列表 i i 2 from i 1 to 100如果剩余的i 2 and 5为零 我想做的是 在数组理解中 跳出 f
  • 如何将后台作业的输出分配给 bash 变量?

    我想在 bash 中运行后台作业并将其结果分配给一个变量 我不喜欢使用临时文件 并且希望同时运行多个类似的后台任务 root root var echo hello world root root echo var hello world
  • PHP 多个 Curl 请求

    我目前经常使用 PHP 的 Curl 每次获取100页左右的结果需要花费很多时间 对于每个请求 我都使用这样的代码 ch curl init get source curl close ch 我有什么选择可以加快速度 我应该如何使用mult
  • 如何只允许从我的 iOS 应用程序访问我的 MySQL 数据库? (使用webapp作为数据库的网关)

    我的 iOS 应用程序需要连接到 mysql 服务器 为了实现这一目标 我想创建一个 Web 应用程序 充当客户端应用程序和服务器端数据库之间的中间人 我担心的是 有人可以简单地找出我的应用程序使用的 URL 并传递他们自己的 URL 参数
  • 请求挂在 IIS 7.5 上的会话模块上

    有时 我网站上的一些请求开始挂在 Session 模块的 RequestAcquireState 状态上 当螺旋开始时 所有请求都会超时 我们需要在受影响的服务器上重新启动 IIS 我进行了很多调查 得到的唯一结论是 当应用程序尝试访问存储
  • java 1.8下无法启动eclipse

    java 1 8 升级后我无法启动 eclipse 附上错误截图 这是我的 eclipse 配置设置 我该如何解决 startup plugins org eclipse equinox launcher 1 3 0 v20120522 1
  • 调用异步方法在视图模型的构造函数中加载数据有警告

    我的视图包含一个 ListView 它显示来自互联网的一些数据 我创建一个异步方法来加载数据并在我的视图模型的构造函数中调用该方法 它有一个警告提示我现在使用await关键字 还有其他解决方案可以在构造函数中异步加载数据吗 有几种可以应用的
  • PHP:如何使用 nl2br() 和 HTML Purifier 保持换行?

    Issue 使用时HTML 净化器 http htmlpurifier org 为了处理用户输入的内容 换行符不会被转换为 br tags 考虑以下用户输入的内容 Lorem ipsum dolor sit amet This is ano
  • 设置 JAVA_HOME 变量时出现问题

    所以我刚刚下载了 Android Studio 并尝试设置 JAVA HOME 变量以便我可以运行它 我使用的是 Windows 8 并按照我找到的所有说明进行操作 但无济于事 转到高级系统设置 gt 环境变量 然后使用包含我的 jre7
  • 在组合框更改上设置文本字段的值-easyui

    下面是我的行的一部分 当组合框值更改时 我需要更改 BudgetLineItemCode 字段的值 title Index field RootLevel width 50 editor type validatebox options r
  • PostgreSQL 索引创建时间

    我可以使用什么查询来找出数据库中创建特定索引 唯一或非唯一 的时间 日期 基本上我想找出过去一个月左右创建的索引 这不可能 没有关于创建关系 索引等的时间的信息
  • 处理照片上传的最佳方式是什么?

    我正在为一个家庭成员的婚礼制作一个网站 他们要求的一个功能是一个照片部分 所有客人都可以在婚礼结束后前往并上传他们的照片 我说这是一个很棒的想法 然后我就去实现它 那么只有一个问题 物流 上传速度很慢 现代相机拍摄的照片很大 2 5 兆 我
  • 在 Asp.net 开发中水晶报表查看器工具栏图像不显示

    我们在我的一个项目中使用 Crystal Report 11 5 与 2008 来显示报表 当我尝试在 Crystal Report Viewer 中显示报表时 报表显示正确 但工具栏图标 第一个 上一个 下一个 打印等 图像未显示 单击这
  • 在 JPA 中保留 Java 8 LocalTime

    我的一个实体中有一个 Java 8 LocalTime private final LocalTime departureTime 它是一个带有 Spring Data Rest 的 Spring Boot 1 3 6 应用程序 我使用 J