Я использую Spring Boot 2, Reactive Mon go Repository, и у меня есть следующая структура данных:
- 2 перечислимых класса и интерфейс, потому что перечисления не допускают никакого другого типа наследования
interface TypeAB
enum class TypeA : TypeAB {
A_OR_B, C_OR_D
}
enum class TypeB : TypeAB {
A, B, C, D
}
моя сущность, которая должна принимать и
TypeA
, и
TypeB
для одного и того же поля (поэтому был введен интерфейс
TypeAB
)
data class MyEntity(val name: String, val type: TypeAB)
(идея заключается в том, что сначала значения типа не являются точными, и следует использовать TypeA
, а затем после уточнения можно использовать TypeB
)
Проблема в том, что в этом случае объект не может быть десериализован, когда я хочу получить данные из БД. Это мое сообщение об ошибке
{"No converter found capable of converting from type [java.lang.String] to type [my.path.TypeAB]"}
Есть ли еще способ сохранить мою структуру организованной и не получить ошибку хранилища?