У меня есть две таблицы.У одного есть данные, которые меня беспокоят, «Вещи».Схема Thing:
- thing_id
- name
- thing_type_id
- ... метаданные (включая даты создания и изменения)
'thing_type_id' - это внешний ключ для другой таблицы, которая в основном действует как перечисление.
Схема ThingType:
- thing_type_id
- name
- ... метаданные
Я создал классы для обоих, и я могу легко объединить их, используя
@ManyToOne() @JoinColumn(name = "thing_type_id")
private ThingType thingType;
, чтобы связатьОбъект ThingType с каждым Thing.Тем не менее, единственным релевантным полем является ThingType.name.
Что я хочу сделать, так это ссылаться на строку напрямую, например
@Column(table = "thing_type" name="name")
private String thingType;
Подходы I 'мы пробовали
- Использование аннотации
@SecondaryTable
в классе Thing, похоже, работает только для однозначного сопоставления. @JsonIgnore
во всех несущественных полях ThingType оставляет меня с объектом, содержащим только одну запись, а не только значение этой записи. - Объединение всего объекта, как описано выше, @JsonIgnoring его и создание getter для этого поля, которое каким-то образом отображается на вывод JSON, должно работать, но я не уверен, как это сделать.
Спасибо за помощь!