• ベストアンサー

Javaアプリケーション

JBuilderでアプリケーションを作成しようと考えているのですが,わからないことがあります。appletでもservletでもなく「アプリケーション」の作成を選択した場合,そのアプリケーションはWeb上で動作するのではなく,スタンドアローンでしか動作しないのでしょうか?調べてみたのですが,よくわかりません。教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
noname#49664
noname#49664
回答No.3

一般的な違いですが。 Javaアプリケーション ローカル環境で実行するプログラムのことをいいます。コマンドラインで動くものもありますし、ウィンドウなどのGUIをもったものもあります。普通に、ダブルクリックして起動するようにも作れます。感覚的には、エクセルとかワードとかそういうごく普通のアプリケーションをJavaで作ったもの、と思っていいでしょう。 アプレット ブラウザの中に埋め込んで動くプログラムです。WebサイトでFlashムービーなんかが表示されるものがありますが、あんな感じでJavaのプログラムが動くと思えばいいでしょう。 サーブレット サーバ上で動くプログラムです。従って、「画面に表示されて動くものではありません」。ブラウザでサーバに何かを送信したときに、サーバの向こう側でごにょごにょと動いているものです。ブラウザに表示される画面を作ったりすることはありますが、それは「HTMLのコードをサーバからブラウザに送信している」だけです。 ちなみに・・ 「Webアプリケーション」というのがありますが、これは「アプリケーション」とは全く違うものです。これは「サーバ側で動かすもの」です。(このWebアプリケーションの中で、部品としてサーブレットなどが動いてます) ですから、「アプリケーションはWeb上で動きますか?」というのは、「エクセルはWeb上で動きますか?」というのと似たような感じです。エクセルやワードは、Webでは動かないでしょう? それと同じようなことですね。

sugoroku17
質問者

お礼

納得!!わかりやすい説明をありがとうございます。作成したいものの焦点を絞って,どれが最適なのかを考えたいと思います。 ありがとうございました。

その他の回答 (2)

noname#49664
noname#49664
回答No.2

アプリケーションとして作ったものを、そのままアプレットやサーブレットとして使えるか?ということでしたら「使えません」となります。ただ、アプリケーションとアプレットを兼用する形でプログラムを作成することは可能です。  ただし、JBuilderの場合、初期状態でアプリケーションクラスとJFrame継承クラスの形でコードが生成されてしまいますから、このままアプレットにするわけにはきません。面倒ですが、JFrame内部をJApplet継承クラスを使った形で切り分けるなりしてやらないといけないでしょう。その場合、例えばJBuilderのGUI関係のデザイナが機能しなくなるなどの弊害も覚悟する必要があります。  サーブレットについては、うーん・・アプリケーションと兼用させるのは無理じゃないでしょうか。そもそもまったくアプローチの違うものですし、共用させることの意味がちょっとわからない感があります。  例えば、実際に処理を行うクラスを切り離し、それをアプリケーションとサーブレットから利用する、というような使い方なら考えられるでしょうが・・。

sugoroku17
質問者

補足

JBuilderの場合,弊害が出るのですね。 「アプリケーション」という言葉で,頭が混乱しています…。アプレットやサーブレットがWeb上で動作しているのは見かけますが,JavaアプリケーションはWeb上で動作させることに対応していないのでしょうか??

回答No.1

JBuilderは使ったことないのですが、 作り方次第でしょうね…。 おそらく。 「アプリケーション」を選択しても、実際にjavaのソースでservletやappletにしてしまえばいいだけの話ですし。 ただ、そうするとwarファイルを作ったりとかする場合にJBuilderの便利な機能が使えないかもしれませんが…。

sugoroku17
質問者

お礼

ありがとうございます。私は,形にとらわれていたということですね。とにかくプログラムを作成してみます。すっきりしました。