我正在使用一个数据库,其中的值存储在ARRAY
列中,该列具有Java Set
的语义,最重要的是,顺序无关紧要。
目前,jOOQ生成器为这些列生成Array<T>
类型的POJO和记录。这是有问题的,因为如果两个数组的顺序不同,它们就不相等。
我试着创建一个自定义转换器,但是,很明显,将toType
定义为Set<String>::class.java
不会编译,因为类型擦除(?)
class ArrayToSetConverter() :
AbstractConverter<Array<String>, Set<String>>(Array<String>::class.java, Set<String>::class.java) { ... }
编译错误:
Only classes are allowed on the left hand side of a class literal
有没有其他方法可以达到我的目标?
类似(不幸的是未回答)问题:jOOQ converter from String to List in Kotlin
1条答案
按热度按时间rryofs0p1#
使用类型擦除,我不认为你可以正式地在Java或Kotlin中创建
Class<Set<String>>
类型引用,但你不必这样做,只要这样做: