Я использую Java Google App Engine с Objectify3.0 (поэтому некоторые виды могут отличаться от стандартных JPO / JPA).
В любом случае, я хочу иметь возможность получать все объекты, отсортированные посвойство и вставьте его для последующего извлечения, чтобы вы вернули результаты в том порядке, в котором они были вставлены.
По сути, это означает, что я хочу несколько вещей:
- Получитьвсе сущности (около 10 000), отсортированные по «имени» в порядке возрастания. Предел ответа 30 секунд будет достигнут, если я попытаюсь получить все сущности за один раз.называется: SortedByNameGame.Это тот же тип, что и в игре (см. Ниже).
- Извлечение сущностей (с фильтрами, например, genre = action) из вида SortedByNameGame, но их возвращение в отсортированном порядке возрастания свойств «name», в котором сущности были
Моя игра выглядит так:
public class Game {
@Id private Long id; //This is my key, auto generated by objectify
private String name;
private String genre;
private Date releasedate;
//ommitting getters and setters
}
Моя игра SortedByNameGame выглядит так:
public class SortedByNameGame {
@Id private Long id; //This is my key, auto generated by objectify
private Long gameid; //This is the Long id of the Game kind shown above
private String name;
private String genre;
private Date releasedate;
//ommitting getters and setters
}
Я рассмотрел и попробовалпара подходов (все вокруг рекурсивных запросов), но безуспешно.Например:
Я подозреваю, что рекурсивный подход при запросе одного и того же URL / сервлета невозможен, т. Е. "Чтобы приложение не вызывало бесконечногоПри рекурсии запросов обработчику запросов не разрешается извлекать собственный URL-адрес. Тем не менее, существует возможность вызывать бесконечную рекурсию другими способами, поэтому будьте осторожны, если ваше приложение может быть настроено на получение запросов на URL-адреса, предоставленные пользователем. " ( источник : http://code.google.com/appengine/docs/java/urlfetch/overview.html#Responses)
Мои вопросы
Что я делаю неправильно, так что эти рекурсивные задачи очереди нене создаются или рекурсивные запросы не работают?
В качестве альтернативы, какие существуют другие подходы, чтобы делать то, что я хочу?