У меня есть объект JSON, хранящийся в db в виде строки. Я использую его для создания динамической формы в пользовательском интерфейсе. Теперь проблема в том, что я хочу изменить некоторые значения в ней на основе других изменений, происходящих в приложении. Поэтому предположим, что я обновил ярлык для поля, тогда мне нужно получить этот JSON и изменить его здесь. Это было бы легко, если я хранится тот же тип объектов в этом формате JSON, но мой JSON походит следующим образом:Преобразование JSON объектов другого типа в java Объект списка
[{
"name": "someName",
"xtype": "keyvaluecombo",
"fieldLabel": "Some Title",
"refType": "YES_NO",
"multiSelect": false,
"helpText": ""
},
{
"name": "someName2",
"xtype": "keyvaluecombo",
"fieldLabel": "Some Title2",
"refType": "YES_NO",
"multiSelect": false,
"helpText": ""
},
{
"xtype": "datefield",
"fieldLabel": "Joining Date",
"name": "joiningDate",
"submitFormat": "Y-m-d"
},
{
"xtype": "userselectioncombo",
"fieldLabel": "Selection",
"name": "selections",
"filterBy": {
"functions": [
"select"
]
}
}]
Теперь это хранится в виде строки в БД, что является эффективным способом изменения fieldLabel на основе имени , Я мог бы попробовать работать над ним только как строку и использовать регулярное выражение, но это было не так.
'есть объект JSON, хранящийся в db в виде строки. Это абсолютно ужасный дизайн. Если вы ДОЛЖНЫ это сделать, вы должны использовать базу данных, поддерживающую json, такую как postgres. – Falmarri
Извлеките JSON, используйте синтаксический анализатор, чтобы получить словарь от него, измените значение, переведите словарь в строку JSON и сохраните его. Или используйте БД, чем известный JSON. –
@ Тиходрома, пожалуйста, уточните – kavinder