jsp サーブレットを勉強しています。
jspに入力された値を
サーブレットに投げます。
サーブレットからjavaクラスに値を投げて
javaクラスで値が正しいかどうかを判断します。
その結果をサーブレットに投げて、
サーブレットからjspに投げて
jspで結果を表示する。というのは理解できました。
しかし私が行いたいのは、
クライアントがjspにアクセスしたときに、
javaクラスにある値をjspに表示させたいというものです。
この場合はサーブレットに何も投げるものがないのですが、
jsp→サーブレット→javaクラス→サーブレット→jsp
このようにサーブレットを使って表示させるには、
どのようなプログラムを書いたらいいのでしょうか。
わかりにくい説明で大変申し訳ないですが、
具体的なプログラムを教えていただけるとありがたいです。
また、参考になりそうなURLがありましたら教えてください。
よろしくお願いします。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
AJAXでやれば簡単です。
現場では日常的にこの手法を使ってます。#例えば1番目のコンボの選択で2番目のコンボに表示するリストを
#DBを検索して決めるような場合
生の Javascript では手間が大きいので、
JQuery など、AJAX が手軽に使える Javascript ライブラリを
使うことをお勧めします。
No.2
- 回答日時:
JSPからサーブレットに飛んで処理を実行してその結果をJSPに戻す、ということでしょうか。
それはそもそもの設計がよくないように思いますが……。どうしてもというのであれば、JSPの中でサーブレットにHttpURLConnectionでアクセスする処理を書いて実行することになりますね。ただし余計なアクセスが増えて処理速度も遅くなるでしょう。
個人的には、サーブレットの処理をサーブレット外からも利用するということは、その処理をサーブレットから切り離すべきだろうと思います。サーブレットは、HTTPによるアクセスを処理するためのものですから、それ以外の形でのアクセスを前提に設計すべきではないでしょう。
例えば、実際に必要な処理部分は普通のJavaクラスに切り離し、サーブレットからその処理を呼び出すようにする。JSPでも、JSP内からそのJavaクラスの処理を呼び出す。このようにすれば、わざわざJSPからサーブレットを呼ぶ必要はなくなります。
No.1
- 回答日時:
サーブレット内から、自分が作ったJavaクラスを利用するということでしょうか。
ただ利用するだけなら、new Hoge();でインスタンスを作って使えばいいだけですが……そういうことではない?あるいは、Javaクラスのインスタンスを常時サーバー側に保持しておいて利用したい、ということでしょうか。そういう場合であれば、sessionやapplication(←JSPの暗黙オブジェクト)にnew Hogeしたインスタンスを保管しておき、それを常に利用するようにすればよいと思います。sessionやapplicationの使い方はわかりますか?
この回答への補足
回答ありがとうございます。
jspからサーブレットに処理を投げる時はGETやPOSTなどを使いますよね?
でも今回行いたいのは、JSPにアクセスした時にサーブレットに飛んで、そこからJavaのメソッドを実行し、実行してでてきた値をサーブレットに戻して、サーブレットから最初のJSPに渡して、表示させたいのです。
JSPにアクセスした時にサーブレットに飛ぶ方法ってありますかね?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java 問題作成のWebアプリの作り方を教えてください 1 2022/11/26 22:01
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
- バックアップ ファイル履歴を使用してバックアップよりハードディスクドライブに保存した方良いですか? 3 2022/09/29 22:31
- Windows 10 WIN10(MAC-bootcamp)で 起動時のパスWが どうにもならない 2 2023/06/30 11:40
- Java java 次の機能を有するメソッドを自クラスに作成し、実装したいです。 機能 名前判定機能 →名前が 3 2022/06/16 16:08
- Java java 入力された文字列を数値に置き換えて整数にし、計算をしたいです。 <を10として /を1とし 4 2022/05/16 21:08
- Java javaの質問です 次の機能を有するメソッド4つを自クラスに作成し、実装したいです 【機能】 足し算 1 2022/06/15 17:49
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- Java Javaについて、mathクラスを使わずに15➗3の結果を切り上げる方法を教えてください…!! 3 2023/04/28 21:37
- Java Java 配列<選挙> 4 2023/07/31 15:07
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
[JSP]1Servletから複数フレーム...
-
jspからServletを呼び、元のjsp...
-
TOMCATで\\webapps\\ROOTフォル...
-
jspでbeanを使いたいのです...
-
jsp:paramアクションタグで配列...
-
Tomcatで開発したStrutsアプリ...
-
JSPの値により遷移先を変更する
-
webアプリを作ってます。エラー...
-
return new ActionForward("xxx...
-
Servlet-JSP間のhidden要素での...
-
RequestDispatcherの使用方法
-
JSPとは凄いのか?SEO的には?
-
JSPのエラー画面(error.jsp)に...
-
javaでカレンダー作成
-
三菱GOTの画面切り替えについて
-
フォーム上で押されたボタンに...
-
リクエストに応じたselectedの...
-
C言語で今まで表示していた画面...
-
腕時計の時報をならないように...
-
漏電遮断器の黄色ボタンと白色...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
jspからServletを呼び、元のjsp...
-
webアプリを作ってます。エラー...
-
JSPからJSPへ情報を渡せる?
-
jspでbeanを使いたいのです...
-
jsp:paramアクションタグで配列...
-
WEB-INF直下のフォルダ
-
1つのフォーム内容を1つのsubmi...
-
javascriptでformの送信後、値...
-
JSPの変数受け渡しについて教え...
-
Tomcatで開発したStrutsアプリ...
-
JSPでimportを行う時の、変数の...
-
JSP>errorPageで指定したページ...
-
servletからjspへの遷移時に文...
-
Servlet-JSP間のhidden要素での...
-
jspのクラスのコンパイルエラー
-
リンクの無効化/有効化 の切り...
-
検索後のページ再表示初期化
-
javaでカレンダー作成
-
strutsで、任意の画面からの任...
-
TOMCATで\\webapps\\ROOTフォル...
おすすめ情報