Хранение родового значения с использованием данных пружины - PullRequest
0 голосов
/ 02 сентября 2018

У меня небольшая проблема: как лучше всего сохранить пару ключ-значение JSON в реляционной базе данных.

Проблема в том, что пользовательский интерфейс ReactJS имеет выпадающие поля, которые могут быть единичными или множественными. Кроме того, значением может быть строка, число, массив и т. Д. Итак, я думал о том, чтобы иметь одну таблицу БД, которая могла бы хранить эту информацию, но, учитывая, что тип значения не является фиксированным, это может быть не лучшим подходом.

В настоящее время я не могу позволить себе роскошь использовать базу данных NoSQL, что уменьшило бы эту проблему.

Итак, чтобы поместить это в контекст, возьмем следующее:

@Entity(name="SELECT_OPTION")
@Getter
@Setter
public class SelectOption {

    /**
     * A unique identifier for the object, serving as the database primary key.
     */
    @Id
    @GeneratedValue(generator = "system-uuid")
    @GenericGenerator(name = "system-uuid", strategy = "uuid")
    private String id;

    private String label;
    private Long value;
}

Проблема с вышеупомянутым состоит в том, что значение не просто Long, но может быть String, Boolean, Array of int / string и т. Д.

Я рассмотрел просто сохранение всех полей в виде строки вместе с типом (предоставленным клиентом), и когда я сохраняю его, у меня есть значение в виде строки, и когда мне нужно изменить это представление, у меня есть тип как Что ж.

В конечном счете, я просто хочу самый чистый подход. Цель этого состоит в том, чтобы позволить различным раскрывающимся спискам в пользовательском интерфейсе с различными типами значений сохранять свои значения выбора вниз. Стол не используется ни для чего другого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...