• 締切済み

strutsでのlinkで質問があります

こんにちは。 神奈川の大学生です。 学校でjavaを少し勉強しstrutsをやっています。 初心者ですが宜しくお願いします。 質問なんですがよくオークションなど検索をした時 該当35件あって 10件づつ表示できていて リンクが2 3 4 って出来ていて 2をクリックすると11件目~20件まで表示できる画面です。 そんな感じで作っていきたいんですけど、 jspで <html:link action="/*.do" property="rinks"> このような形でループさせて表示はできるのですが、 検索結果によって リンクの数字は増えたり減ったりするため acrion="*.do?xxxx=" + 変数(リンクの押された数字) のような形も違うみたいでした。 パラメータを渡す処理がサイトなど検索しても理解ができません。 値がわたればSELECT文で11~20までを条件を指定して表示できますので、 struts詳しい方方法を教えて下さい。 宜しくお願いします。

みんなの回答

  • PED02744
  • ベストアンサー率40% (157/390)
回答No.1

あまりstrutsは関係ないと思います(多少は関係しますが) 検索するのは、サーバ側のDBなので、検索件数も検索結果もサーバはわかっています。 さらに、一回に表示させるべき件数もサーバ側が知っているはずです。 なので、例えばセッション内に一回に表示すべき結果を入れておけばよいわけです。 例えば検索結果件数が35件、一回の表示件数が10件だと(35+(10-1))/10 = 4 4ページ分のデータがある事がわかります。 初回の表示の場合は1が押されたのと同じ処理をすればよいので、 初回・1がクリックされた場合は、1~10 2がクリックされた場合は、11~20 3がクリックされた場合は、21~30 4がクリックされた場合は、31~35(全体で35件しかないから) のデータをセッションなり、リクエストなりのスコープに入れてiterateでまわせばよいのです。 1~4が押された時の処理は<html:link>でも良い(あなたの考察で合っています)ですが、 できればformに対して submitするようなJavaScriptを書いてあげた方がよろしいかとおもいます。

yuriko1155
質問者

お礼

PED02744様 回答ありがとうございます。 大変理解しやすく勉強になりました。 ということはJSPでリンクボタンの2~4をクリックした際 onClick()でfanction()処理の中にactionで指定した 移動先+引数を渡すという処理を書けばいいんでしょうか? 渡された引数により 件数を絞っていくという感じでしょうか?

関連するQ&A