Запись и получение данных json mysql

150
24 марта 2018, 16:01

Есть таблица в mysql

id     name     text

Столбец text имеет тип JSON. Получаю данные из этого столбца:

String sql = "SELECT * FROM texts WHERE `name`=?";
PreparedStatement stmt = MySQL.connect().prepareStatement(sql);
stmt.setString(1, "name");
ResultSet result = stmt.executeQuery();
if(result.next()){
    text = result.getString("text");
}

Вопрос: как данные в переменной text преобразовать в объект Json для дальнейшей работы с ним?

Делаю так:

JSONObject j = new JSONObject(text);

Idea выдает ошибку

Error:(59, 31) java: incompatible types: java.lang.String cannot be converted to java.util.Map

Answer 1
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
JSONParser parser = new JSONParser();
String s = "[0,{\"1\":{\"2\":{\"3\":{\"4\":[5,{\"6\":7}]}}}}]";
Object obj = parser.parse(s);

и дальше работать с Object.

Если у вас не просто какой-то json, если его можно маппить на объект то Алексей Шиманский для вас все расписал в большом ответе

Как и чем парсить Json на Java?

READ ALSO
Аналог типа Variant

Аналог типа Variant

Портирую на Java один протоколСуть протокола: сообщения состоят из двух частей - структура данных и сами данные

151
Как узнать какой метод вызвал текущий метод

Как узнать какой метод вызвал текущий метод

У меня есть в классе ONE два метода А и С, каждый передает свою уникальную строку в метод B, находящийся в классе TWO

169
uncaught typeerror cannot read property 'options' of undefined [требует правки]

uncaught typeerror cannot read property 'options' of undefined [требует правки]

Здравствуйте, возникла следующая проблемав JS новичок, на уровне ("вывести свой алерт")

184
JSON меняет кавычки на "

JSON меняет кавычки на "

Если в title есть кавычки '' он меняется на " и получаю: Title for "Facebook"

182