Для таких атрибутов необходимо использовать конвертеры, и в вашем случае я приведу свой пример, он у вас там будет по аналогии. @Convert(converter = ListJsonConverter::class) var list: List<Map<String, Any>>,
Также сам конвертер
@Converter(autoApply = true)
class ListJsonConverter : AttributeConverter<List<Map<String, Any>>, String> {
private val objectMapper = ObjectMapper()
override fun convertToDatabaseColumn(attribute: List<Map<String, Any>>): String {
return objectMapper.writeValueAsString(attribute)
}
override fun convertToEntityAttribute(dbData: String?): List<Map<String, Any>> {
try {
return dbData?.let { objectMapper.readValue<List<Map<String, Any>>>(it) } ?: emptyList()
} catch (e: Exception){
return emptyList()
}
}
}
Здесь о них хорошо написано.