Я получил такую ошибку.
Вложенное исключение: java .lang.IllegalArgumentException: Заданное строковое значение: [{"id": "DFW", "namd": "Dallas , Техас , TX (DAL-Love Field) "," name_kr ":" 댈 라스, 텍사스 (DAL- 러브 필드 공항) "}, {" id ":" RBD "," namd ":" Даллас, TX (RBD-Executive) ) "," name_kr ":" 댈러스, 텍사스 (RBD- 이그제큐티브) "}, {" id ":" ADS "," namd ":" Даллас, TX (ADS-Addison) "," name_kr ":" 댈러스, 텍사스 (ADS- 애디슨 공항) "}] не может быть преобразовано в Json объект
это значение - мой столбец jsonb postgres строки.
и вот моя таблица Пример сущности (связанная проблема).
@Data
@Entity
@Table(name = "expedia_region_union")
@JsonInclude(JsonInclude.Include.NON_NULL)
@TypeDefs({
@TypeDef(name = "jsonb", typeClass = JsonBinaryType.class)
})
public class ExpediaRegionUnion {
@Id
// @GeneratedValue
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column( columnDefinition = "uuid", updatable = false )
private String regionId;
@Type(type = "jsonb")
@Column(columnDefinition = "airport")
private HashMap airport;
@Column(name = "source_time")
private String sourceTime;
На мой взгляд, карта сущностей, похоже, не обрабатывает поле аэропорта. поле airport
является списком типа jsonb. но я создал правило сущности наподобие HashMap
.
пример данных
about airport field
[
{
"id": "DFW",
"namd": "Dallas, TX (DFW-Dallas-Fort Worth Intl.)",
"name_kr": "댈러스, 텍사스 (DFW-댈러스-포트워스 국제공항)"
},
{
"id": "DAL",
"namd": "Dallas, TX (DAL-Love Field)",
"name_kr": "댈라스, 텍사스 (DAL-러브필드 공항)"
},
{
"id": "RBD",
"namd": "Dallas, TX (RBD-Executive)",
"name_kr": "댈러스, 텍사스 (RBD-이그제큐티브)"
},
{
"id": "ADS",
"namd": "Dallas, TX (ADS-Addison)",
"name_kr": "댈러스, 텍사스 (ADS-애디슨 공항)"
}
]
Как изменить настройки объекта?