Я использую инфраструктуру 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>();
}
}
С помощью этого кода я достиг своей цели, но я не думаю, что это отличное решение с точки зрения кода и для производительности. Есть ли лучшее решение?