Приветствую!
Тут у вас массив объектов состоящий из 5 элементов.
[
{"id": "1", "value": "One"},
{"id": "jam", "value": "it`s bla-bla"},
{"id": "abc", "value": "lowercase letter"},
{"id": "ABC", "value": "uppercase letter"},
{"id": "2", "value": "two"}
]
Data data = gson.fromJson(reader, Data.class);
А тут вы создаете лишь один объект. Скорее всего вам нужно получить list объектов.
Для Gson прочитайте эту статью:
https://howtodoinjava.com/gson/gson-parse-json-array/
Обратите внимание на:
[
{
"name": "Alex",
"id": 1
},
{
"name": "Brian",
"id": 2
},
{
"name": "Charles",
"id": 3
}
]
Вот, тут считывается в массив объектов
User[] userArray = gson.fromJson(userJson, User[].class);