- ベストアンサー
jsp,servlet,beanの流れについて
初歩の初歩の質問ですが、参考書等読んでいて混乱してしまっています。宜しくお願いします。 a.jsp(入力画面) a_servlet.java a_bean.java(setのみ) b.jsp(表示画面) b_servlet.java b_bean.java(get,setのみ) というファイルがある時のプログラムの流れは、 (1)a.jsp・・・画面を表示する。データを入力する。登録ボタンを押下する。 (2)a_servlet.java・・・(1)で登録ボタンを押下されたら、a.jspのデータを取得。a_bean.javaへ設定する。b.jspへ飛ぶ。 (3)a_bean.java・・・(2)によりデータが設定されている。 (4)b_servlet.java・・・a_bean.javaのデータを取得し、b_bean.javaに設定する。 (5)b_bean.java・・・(4)によりデータが設定されている。 (6)b.jsp・・・表示データをb_bean.javaより取得後、画面を表示する。削除ボタンを押下する。 (7)b_servlet.java・・・(6)で削除ボタンが押下されたらb.jspのデータを取得し、b_bean.javaへ設定する。 特にbファイルの処理順序で混乱しています。 上記のような流れで考え方は合っているでしょうか。 少々分かりずらいかもしれませんが、間違っていたら小学生でも分かるように教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちわ。 bubu2さんが言いたいのは「b.jspの初期値をどこから取得するか?」だと思うのですが、質問内の(4)で設定したb_beanをb.jspで参照できるようにb.jsp内で定義してあげればいいと思います。 (1)b_servlet内でb_beanを作って値を入れる。 (2)b_servlet内でb_beanをリクエストに入れてあげる。(3)(2)のリクエストをb.jspで参照する。 理解がずれてたらごめんなさい。
その他の回答 (1)
- ryo-_-3
- ベストアンサー率14% (2/14)
こんにちは。 まず整理させてください。 a_beanクラスはセッターのみということになると (4)のa_beanからデータを取得し、b_beanへセットは、 セットした情報を取得するメソッドが無いような気がします。 a_beanクラスとb_beanクラスは同じ情報を扱うのでしょうか? でしたらBeanクラスというのを作って、セッターとゲッターを入れてあげればいいと思います。 流れてきには A.jspでsubmitをかけると、a_servletが呼び出され、 a_servletで処理後、b.jspが表示。 b.jspで削除ボタンが押されると、b_sevletが呼ばれ b_servletで処理後になんらかのJspが呼び出される という動きが一般的だと思います。 (4)のb_servletをどのように呼んでいるのかなと思います。
補足
分かってない者が質問するので、質問の意味も分かりずらいだろうと思います。回答本当にありがとうございます。 a_beanはa.jspもしくはa_servletだけが使うものと思い、そうすると入力画面(a.jsp)では最初はデータ-が無いのでgetは不要だと考えていました。b側でa_beanの中のgetによりデータ-取得が出来るのであれば、a_beanはゲッターセッターがあることにします。又、a_beanとb_beanは違うデータ-を扱う事とします。 私が混乱してしまったのは、『b.jspを表示する、削除ボタンが押下されたらb_servletがb.jspの表示データ-を取得しb_beanへ格納する。』のとき、b.jspが表示するデータ-は、誰がどこから取得してb.jspに出力するの?ってことからなのです。宜しくお願いします。
お礼
>理解がずれてたらごめんなさい 全く理解は、ずれていないです。 この回答と参考書等を見比べていたので返答が遅くなりました。ようやく流れがイメージできるようになりました。ありがとうございました。