[Seasar-user:12681] Re: [S2JDBC]selectBySqlFile を使って、S2Pagerでページング

Yasuo Higa [E-MAIL ADDRESS DELETED]
2008年 1月 30日 (水) 16:50:07 JST


ひがです。
> 
> 複雑なSQLを実行したいのでSQLファイルを使い、S2Pagerを使ったページングを試み
> ています。
> 
> たとえば下記のようなコードです。
> 
> EmployeeCondition condition = new EmployeeCondition();
> condition.setOffset(0);
> condition.setLimit(15);
> List<EmployeeDto> resultList =
> jdbcManager.selectBySqlFile(EmployeeDto.class,SQL_FILE,condition).
getResultList();
> 
> ここで、conditionは、PagerConditionを実装しています。
> 
> 検索結果のresultListには15件のデータが入ってきますが、conditionのcountプ
> ロパティが更新されず、
> 実際の検索結果の全件数のとり方が分かりません。
> 
まず、S2JDBCとS2PagerのPagerConditionは併用できません。
動いているのは、偶然というか、機能の削除漏れです。m(_ _)m

当初は、DTOでlimit, offsetを指定できるようになっていたのですが、
途中で、流れるようなインターフェースに移行しました。
そのときに機能を削除し忘れたみたいです。

件数は、selectBySql()で取得します。
Integer count = jdbcManager
    .selectBySql(Integer.class, "select count(*) from hoge")
    .getSingleResult();

offset,limitは次のように指定します。
EmployeeConditionからoffset,limitのプロパティは削除します。
List<EmployeeDto> resultList = jdbcManager
    .selectBySqlFile(EmployeeDto.class,SQL_FILE,condition)
    .limit(15)
    .getResultList();

よろしくお願いします。


Seasar-user メーリングリストの案内