我有一个具有枚举字段和与其他表的关系的实体。问题是枚举已经随着时间的推移而改变,我需要查看现在无效的更改值。
@Audited
@Entity
@Table(name = "FILE")
public class FileEntity extends RevisionAudit {
@ElementCollection(fetch = FetchType.EAGER)
@CollectionTable(
name = "FILE_TYPE",
joinColumns = @JoinColumn(name = "FILE_ID")
)
private Set<FileTypeEntity> types = new HashSet<>();
@Enumerated(EnumType.STRING)
private FileFormat format;
}
获取具有常规auditreader.forrevisionsofentity的实体在尝试填充枚举字段时自然会失败。我尝试将字段值Map到如下字符串:
auditQuery.addProjection(property("format").function("to_char"))
这也适用于无效的枚举值。但是添加字段投影只会返回投影字段,我还不能将投影添加到 types
关系。
有没有其他方法可以将值强制为字符串或将关系添加到投影中?
暂无答案!
目前还没有任何答案,快来回答吧!