[Maple-user: 319] Re: Pagerの組み込みについて

Back to archive index

Hawk schol****@hawkl*****
2006年 7月 9日 (日) 22:49:04 JST


Hawkです。

私も木内さんと概ね同じ方法でPagerを用いていますが、
DAOの上にもう一枚レイヤを用意して(仮にdbLogic)、
Pagerの初期化やLIMITの算出はその中で行っています。
DAOには出来るだけ素直にSQLを実行する機能だけを持たせておいて、
凝った処理はdbLogicのメソッドで対応する、というイメージです。

また私は単純なDAOの他にDB_DataObjectも併用しているのですが、
dbLogicとほぼ同様のインターフェースを備えた、
DAOの代わりにDB_DataObjectを使う”dbdoLogic”を用意して
DB_DataObjectでも同じような感覚でPaging処理を行えるようにしています。

私自身これがベストな方法だとは考えていませんが、
参考になれば幸いです。


木内智史 wrote:
> お世話になっております。木内です。
> 
> まずは、Mapleがバージョン3.1.1がリリースしたとの事で御礼申し上げます。
> これからも頑張ってください!応援しております。
> 
> 
> さて、今回はPagerについての質問です。
> ページ送り部分を、自分で構築していらっしゃる方もいるとは思いますが、僕な
> んかはもっぱらPEARのPagerを利用して、ページ送り部分を構築します。
> そこでMapleのどこにPagerを組み込もうかと考えた結果、
> 	
> 	「DAOクラスのインターフェースを作って、そのインターフェースに
> 	Pagerを放り込んでしまおう」
> 	
> と考えました。
> 当然、Mapleで使用するDAOクラスは、このインターフェースを継承します。
> Pager機能をディフォルトで持ったDAOクラスは、データ取得と共に、必要に応じ
> てPagerも生成し、それを丸ごとDTOに投げ込んで返却。
> これまたMapleで使用するDTOに関しても、DTOインターフェースが用意されてお
> り、Maple使用のDTOはすべてこのDTOインターフェースを継承します。
> このDTOはPagerの格納部分も保持しており、
> 	
> 	$DTO->getPager();
> 	
> などで、DAOから受け渡されたページ送り部分を取得する事ができます。
> 
> 
> ちょっと分かりづらい文章だとは思いますが、大体こんな感じでPagerを組み込
> もうと考えております。
> しかし、いかんせんプログラマ歴1年程度なので、自分の構想は自分であまりス
> マートだとは思えません。
> 皆さんの意見を聞かせていただけないでしょうか?
> 皆さんはどのようにPagerなどの機能を盛り込んでおられるのでしょうか?
> ご指導の程、よろしくお願いいたします。
> 


-- 
Hawk : {
  web site : http://blog.hawklab.jp/
}



Maple-user メーリングリストの案内
Back to archive index