Как хранить данные JSON с помощью GORM в базе данных MySQL?

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

У меня нет никакой альтернативы, чем MySQL для моего проекта, так что без схемы БД не может быть и речи.

Я мог бы сделать это, используя обычную реляционную модель для хранения полей и значений в нескольких таблицах, но это было слишком неуклюже. Поэтому я решил сохранить эти динамические объекты как JSON в таблице MySQL.

Это хороший подход? Если нет, можете ли вы предложить какие-либо правильные альтернативы?

В любом случае у меня возникают проблемы с извлечением объекта в виде JSON из базы данных с использованием Grails. Это мой пример класса, где определение - это поле, в котором нужно хранить JSON.

String subJobType
String definition

static constraints = {
    definition nullable: false
}

static mapping = {
    definition sqlType: 'MEDIUMTEXT',type: 'text'
}

Я могу только получить поле определения как строку, но хочу вместо этого вернуть объект.

Я мог бы сначала получить все объекты, а затем преобразовать все поля определения каждого объекта в JSON, но это не очень хорошая идея.

0 ответов

Другие вопросы по тегам