首页 > 解决方案 > 转换器的类型 UUID 与属性类型 Set 不匹配

问题描述

我有以下 JPA 实体属性及其注释:

@Convert(converter = UuidConverter.class)
@ElementCollection
@CollectionTable(name ="entity_branch", joinColumns=@JoinColumn(name="entity_id"))
@Column(name = "branchId")
private Set<UUID> branchId;

我收到以下编译时警告:

转换器的类型 UUID 与属性类型 Set 不匹配

转换器类如下所示:

@Converter
public class UuidConverter implements AttributeConverter<UUID, String> {

    @Override
    public String convertToDatabaseColumn(UUID attribute) {
        return ofNullable(attribute)
                .map(UUID::toString)
                .orElse(null);
    }

    @Override
    public UUID convertToEntityAttribute(String dbData) {
        return ofNullable(dbData)
                .map(UUID::fromString)
                .orElse(null);
    }
}

即使我收到警告,一切都按预期工作。如何在不使其静音的情况下修复警告?

标签: javahibernatejpaconverters

解决方案


推荐阅读