如何在 Kotlin 中使用注解 TypeDefs?

Big*_*Sea 9 java hibernate kotlin

这个 Java 片段的等效 Kotlin 代码是什么?

@Data
@Entity
@TypeDefs({
        @TypeDef(name = "string-array", typeClass = StringArrayType.class),
        @TypeDef(name = "int-array", typeClass = IntArrayType.class),
        @TypeDef(name = "json", typeClass = JsonStringType.class),
        @TypeDef(name = "jsonb", typeClass = JsonBinaryType.class)
})
public class Parent implements Serializable {
    //....
}
Run Code Online (Sandbox Code Playgroud)

最后以下代码有效。

@TypeDefs(
        TypeDef(name = "string-array", typeClass = StringArrayType::class),
        TypeDef(name = "int-array", typeClass = IntArrayType::class),
        TypeDef(name = "json", typeClass = JsonStringType::class),
        TypeDef(name = "jsonb", typeClass = JsonBinaryType::class)
)
Run Code Online (Sandbox Code Playgroud)

ice*_*000 8

尝试这个。

@Data
@Entity
@TypeDefs(
  TypeDef(name = "string-array", typeClass = StringArrayType::class.java),
  TypeDef(name = "int-array", typeClass = IntArrayType::class.java),
  TypeDef(name = "json", typeClass = JsonStringType::class.java),
  TypeDef(name = "jsonb", typeClass = JsonBinaryType::class.java))
class Parent : Serializable
Run Code Online (Sandbox Code Playgroud)