Java App Engine: извлечение всех сущностей, отсортированных по свойству и вставленных для последующего извлечения, но с сохранением порядка вставки - PullRequest
1 голос
/ 17 мая 2011

Я использую 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)


Мои вопросы

  1. Что я делаю неправильно, так что эти рекурсивные задачи очереди нене создаются или рекурсивные запросы не работают?

  2. В качестве альтернативы, какие существуют другие подходы, чтобы делать то, что я хочу?

...