Как уменьшить JSON данных до основных в JAX-RS? - PullRequest
0 голосов
/ 22 апреля 2020

Я использую инфраструктуру Jax-RS в проекте RESTFull API. Я хочу уменьшить количество JSON данных, отправляемых в мое клиентское приложение. Поскольку я использую библиотеку GSON и шаблон DAO, отправляется много данных. В некоторых случаях я также бесконечно l oop для отношений. Вот моя ситуация:

@GET
@Path("/fantaplayers/")
public List<FantaPlayer> getByUser() {
    try {
        List<FantaPlayer> result = fantaPlayerDao.find(userManager.getUser());
        for (FantaPlayer fantaPlayer : result) {
            fantaPlayer.setChangedAt(null);
            fantaPlayer.setCreatedAt(null);
            fantaPlayer.setCredits(null);
            fantaPlayer.setPlayers(null);
            fantaPlayer.setUser(null);
            League league = fantaPlayer.getLeague();
            league.setCreatedAt(null);
            league.setChangedAt(null);
            league.setFantaAdmin(null);
            league.setKeyAccess(null);
            league.setMatches(null);
            league.setStartingCredits(null);
            league.setFantaPlayers(null);
        }
        return result;
    } catch (NoElementFoundException e) {
        return new ArrayList<FantaPlayer>();
    }
}

С помощью этого кода я достиг своей цели, но я не думаю, что это отличное решение с точки зрения кода и для производительности. Есть ли лучшее решение?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...