2013-10-28 11 views
1

我想从记录20条记录的为30如何从表中的行号记录到30 20之间,JDO查询Apache中ISI

我有回报JDO查询看起来像

@javax.jdo.annotations.Queries({ 

    @javax.jdo.annotations.Query(
      name="message_getByUsername", language="JDOQL", 
     value="SELECT FROM com.message.pojo.MessagePojo WHERE to== :username order by SendDate "), 


    @javax.jdo.annotations.Query(
      name="message_getByGroup", language="JDOQL", 
     value="SELECT FROM com.message.pojo.MessagePojo WHERE group== :group order by SendDate ") 



}) 

public List<MessageConversationPojo> retriveInbox(@Named("username") String username) { 
    List<MessageConversationPojo> listOfMessage = allMatches(new QueryDefault<MessageConversationPojo>(
      MessageConversationPojo.class, "message_inbox", "username", retriveUserByUsername(username))); 
     if (listOfMessage.size() != 0) { 

     return listOfMessage; 
    } 
    return null; 
} 

现在

和我打电话询问我怎么能得到从记录行数20〜30

回答

1

这还没有在当前发布的版本中实现(核心1.3.0,objectstore-jdo-1.3.0)。

但是,我刚刚创建了一张票ISIS-579用于增强功能并实施了更改。要返回记录20到30,可以使用:

QueryDefault<MessageConversationPojo> q = 
     new QueryDefault<MessageConversationPojo>(...).withStart(20).withCount(10); 

它很可能会在几个月前,这得到释放,所以在此期间,你可以build Isis from source

相关问题