gpt4 book ai didi

java - JSR-310 年份映射到 MySQL 中的 TINYBLOB

转载 作者:行者123 更新时间:2023-11-30 02:48:30 25 4
gpt4 key购买 nike

好吧,我的问题很愚蠢。

在 Hibernate 5.1(5.2 相同)中,我的 Year 列映射到tinyblob,而不是人们所期望的直观的 int 列。其他 JSR-310 列已成功映射。

例如

@Column(name = "ANNO_PROTOCOLLO", nullable = true)
protected Year annoProtocollo;

@Column(name = "CREATED", nullable = false, updatable = false, insertable = true)
protected LocalDateTime created = LocalDateTime.now();

第一列映射到tinyblob,但第二列正确映射到datetime,这是此类值的 SQL 标准。

同样,我的问题很愚蠢,因为没有什么可以阻止我将 Year 列声明为 int,但我想了解其背后的原因,以及是否有一种方法可以使用少于 3 行代码 em> 将 Year 映射到 int。由于我需要处理多个数据库,因此我无法接受 @Column(columnDefinition),如果这是唯一的解决方案,我将只使用 Integer 并接受它,就像我之前所做的那样

最佳答案

简单原因是他们没有提供Year的特定映射,因此您将获得对象序列化与字节之间的默认映射,即一个 BLOB。

您可以实现自定义类型来提供映射。
请参阅Hibernate Domain Model Mapping Guide - Custom BasicTypes .

关于java - JSR-310 年份映射到 MySQL 中的 TINYBLOB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39414677/

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