GSON не конвертирование объекта: пустой json, хотя у объекта есть атрибуты, наборJAVA

Программисты JAVA общаются здесь
Anonymous
GSON не конвертирование объекта: пустой json, хотя у объекта есть атрибуты, набор

Сообщение Anonymous »

Я пытаюсь использовать пакет Google Gson в моем коде Java. При этом я создаю простое приложение, где у меня есть класс чата и класс сообщений. Хотя я добавил атрибуты класса в новый экземпляр класса, GSON не конвертирует класс в JSON.

Код: Выделить всё

public static void createChat(String chatname, String creatorUsername, String chatMessage) throws SQLException {
// create a database connection
Connection connection = DriverManager.getConnection("jdbc:sqlite:chatdata.db");
PreparedStatement statement = connection.prepareStatement("INSERT INTO chatdata (name, data) VALUES (?, ?);");

statement.setQueryTimeout(30);  // set timeout to 30 sec.

Chat newChat = new Chat();
newChat.name = chatname;
Message firstMsg = new Message();
firstMsg.poster = creatorUsername;
firstMsg.messageContent = chatMessage;

newChat.allMessages.add(firstMsg);

newChat.members.add(creatorUsername);

// Create DB if not exists
createDbIfNotExists("chatdata");

// Convert class to json using gson
String chatJson = gson.toJson(newChat);

print(newChat.name);
print(chatJson);

statement.setString(1, chatname);
statement.setString(2, chatJson);
statement.executeUpdate();
}
Как вы можете видеть, я пытаюсь преобразовать объект newchat в строку json.
Ниже приведен классы чата и сообщения:

Код: Выделить всё

public class Chat {
public static String name;
public static ArrayList allMessages = new ArrayList();
public static ArrayList members = new ArrayList();
}

class Message {
public static String poster;
public static String messageContent;
}
При печати JSON вывод просто {} , при печати newchat.name отображает имя, установленное ранее в методе.


Подробнее здесь: https://stackoverflow.com/questions/796 ... ibutes-set

Вернуться в «JAVA»