美しくないかもしれないが、有効だと思う
いきなりソースだけど、
int i = 0; while (rs.next()) { if (i > 5000) { // マジックナンバーを 定数化していないは、ここではあまり関係ない log.warn("規定の件数をはるかに超えている"); break; } i++; ... }
というロジックがあっても良いのでは無いかと思う。(カウンタ i がダサい)
ただし、この場合は例えば以下の様な状況の場合。
- 出力先は HTML の TABLEタグを使った表現である
- 表(TABLEタグ)で表示される情報量は、例えば最大で千行を仕様とする。5千行は、まずあり得ない
- 上司達はコンピュータに疎く、専門的な話は通じない (^^;
- なので、障害があったらプログラム作成者に問合せが来る
言いたいことは以下のような事
- 無限loopの様な状態に陥って、システム全体に影響が出るようにはしたくない
- PostgreSQL などの LIMIT が使えれば、それと同じ事
- Webアプリケーションで TABLEタグの件数の上限って、他社はどうやってるんだろ?
- 理想だけでは事は進まない事が多い。臨機応変が大事かなと