Имам този клас в уеб приложението java spring.
public class Question{
private String questionText;
//getters and setters.
}
Трябва да конвертирам това в обект json. Проблемът е, че текстът на въпроса може да съдържа нещо. Може да е въпрос за обект json, така че един обект json може да бъде част от въпроса. Използвам Google-gson, за да конвертирам този клас в JSON обект.
Трябва ли да избяга от въпросаТекст, така че да нямапредизвика проблем при конвертирането в JSON. Ако да, как трябва да го направя? Ако не, тогава някой google-gson трябва да избяга от въпроса, за да го представи в обекта json. В този случай, от страна на клиента, как мога да го конвертирам обратно като използвам Java скрипт и да го покажа на потребителя, какъвто е?
Отговори:
6 за отговор № 1Разгледайте следния пример
public static void main(String[] args) {
Question q = new Question();
q.questionText = "this " has some :" characters that need \escaping \";
Gson g = new Gson();
String json = g.toJson(q);
System.out.println(json);
}
public static class Question{
public String questionText;
//getters and setters.
}
и неговата продукция
{"questionText":"this " has some :" characters that need \escaping \"}
Символите, които трябваше да избягат "
и са избягали от генератора. Това е силата на JSON Parser / Generators.
3 за отговор № 2
GSON автоматично ще избегне струната, когато я разпредели. Вие не трябва да се притеснявате за това. Можете да изтеглите библиотеката на gson от тук