当前位置: 首页 > 面试题库 >

休眠映射java Long到MySQL BIGINT错误

孟正志
2023-03-14
问题内容

我在MySQL中有一个ID字段类型为BIGINT的表

在hibernate对象中,我为此字段使用Java Long类型

但是当运行程序时,它会抛出异常: Expected: class java.lang.Long, got class java.lang.Integer

如何在hibernate状态下映射MySQL BINGINT数据类型?


问题答案:

但是在运行程序时,它将引发异常:预期:类java.lang.Long,得到类java.lang.Integer

Long为BIGINT 使用a 是正确的,上述错误表明您以某种方式在代码中的某个地方传递了预期的Integera Long。仔细检查您的代码。



 类似资料:
  • 问题内容: 我需要预先将没有实现接口的枚举映射到现有数据库,该数据库使用将该枚举存储在与所有者类相同的表中。 在这种情况下应如何处理映射?持久化到数据库不会改变,因为实现该接口的所有枚举都将具有不同的值,但是我不确定应如何从数据库中检索对象(我是否需要自定义映射器,它将尝试实例化一个使用指定的enum类进行枚举吗?Hibernate是否本身支持此功能?)。 问题答案: 可以创建一个自定义(例如th

  • 问题内容: Hibernate提供的注释支持使用或两种类型的映射。当我们使用映射时,它使用的“名称” 而不是Enum 的表示形式。在数据库列仅包含一个字符的情况下,这是一个问题。例如,我有以下枚举: 当我坚持枚举使用,即休眠尝试在数据库中存储的值是开放的。但是,我的数据库列仅包含一个字符,因此会引发异常。 克服这个问题的一个办法是改变枚举类型持有单个字符(如,代替,)。但是,这降低了可读性。有什么

  • 问题内容: 我有一个颜色枚举 我有包含它的MyEntity。 我已经有一个UserType来映射我的枚举。 您知道如何在Hibernate hbm.xml中映射枚举集吗? 我需要一个UserType还是最简单的方法? 谢谢 编辑: 只是为了说明一下,我正在寻找 hbm.xml 配置而不是@CollectionOfElements注释 问题答案: 我使用EnumSet映射线程中的解决方案,该解决方案

  • 问题内容: 我使用Spring Boot 1.4.2,它带来了hibernate5.0.11(JPA 2.1)。我想在我的实体中使用Java 8时间类,因此包括在内。 我的实体定义了LocalDate字段。 我希望将其映射到我的H2数据库中的DATE。 在我的数据库中,我将此声明为。 当我尝试运行测试时,出现以下错误: 令我惊讶的是,如果我将数据库定义更改为 我得到的错误 这只是前一个消息的相反消

  • 问题内容: 我有一个hibernate映射的Java对象,其中充满了许多正常的可hibernate映射字段(例如字符串和整数)。 我向其中添加了一个新的嵌入式字段(该字段位于同一表中- 而不是映射),它是一个。我已经明确表示该字段可能实际上不包含任何内容(而不是每次访问它都必须进行处理)。 如何在文件中设置映射?我想hibernate来自动转换数据库到的,当它获取对象。它还应将的非空实例转换为的。

  • 问题内容: 在hibernate映射中,我设置了属性,这将获取父级的所有子级记录。 整个应用程序都在使用它。 这在我的应用程序的特定模块上造成了性能问题,我只想在其中获取父记录。 由于无法在其他许多地方使用该属性,因此我无法将其更改为。有没有办法来解决这个问题? 请让我知道是否需要更多信息。 问题答案: 这些在hibernate状态并不具有这种功能,因为它尊重您的习惯。因此,我建议解决您的需求的方