gpt4 book ai didi

enums - JPA @枚举错误

转载 作者:行者123 更新时间:2023-12-01 00:31:25 31 4
gpt4 key购买 nike

我有一个实体,它有一个我想成为枚举的字段。

@Column(name = "TEMPRATURE_ZONE")
@Enumerated(STRING)
private TemperatureRegime tempratureZone;

枚举定义如下:

public enum TemperatureRegime {
AMBIENT,
CHILL
}

我表中此字段的数据始终为“AMBIENT”或“CHILL”,但当我对表执行 findAll 查询时,出现以下异常:

Exception [EclipseLink-116] (Eclipse Persistence Services - 2.1.0.v20100614-r7608): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: No conversion value provided for the value [Chill] in field [LOCATION_GROUP.TEMPRATURE_ZONE].
Mapping: org.eclipse.persistence.mappings.DirectToFieldMapping[tempratureZone-->LOCATION_GROUP.TEMPRATURE_ZONE]
Descriptor: RelationalDescriptor(com.company.location.LocationGroup --> [DatabaseTable(LOCATION_GROUP)])

我看不出问题出在哪里,有什么想法吗?

干杯,

詹姆斯

最佳答案

我认为这只是个案问题。您的枚举定义了 CHILL,而数据库值为 Chill。最简单的解决方案应该是更改枚举定义以匹配数据库值。

或者,我记录了一种转换器方法来处理与枚举值不完全匹配的数据库字符串:

http://wiki.eclipse.org/EclipseLink/Examples/JPA/EnumToCode

道格

关于enums - JPA @枚举错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3360400/

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