初心者は「環境変数の設定方法」「サーブレットの実行方法」などの質問をします。そんな質問が多すぎるので、初心者向けのガイドとして初心者必読の本を書きます!
1 つ目はツールのダウンロードです。
初心者には Editplus + JDK を使用することをお勧めします。たとえば、JB、Eclipse、JCreator を使用すると、最初は便利ですが、初心者には使い方がわかりにくくなると思います。環境変数を設定すると、何が起こっているのか、理由がわかるまでわかりにくくなります。
次のアドレスからダウンロードできます:
Editplus (最新バージョンは v2.11): http://count.skycn.com/softdown.php?id=3641&url=http://sc-http.skycn.net/ down/epp211a_cn.exe (登録コードが必要な場合は、オンラインにたくさんありますので、自分で見つけてください)
JDK (最新バージョンは Java2sdk1_4_2): http://count.skycn.com/softdown.php?id=3116&url=http://sc-http.skycn.net/down/j2sdk-1_4_2-windows-i586.exe (これは Windows の場合です)
次に、JDK をインストールします。私は c:JDK ディレクトリにインストールしました。
次に、CLASSPATH の設定の問題があります。
オペレーティング システムが PATH を使用して実行可能プログラムを検索するのと同じように、Java 実行環境も CLASSPATH を走査してクラスを検索します。HelloWorld のような単純なプログラムの場合でも、JVM は定義されたすべてのパスを走査します。対応するファイルが見つかるまで CLASSPATH を続けます。
使用しているシステムは 2k または XP だと思います。次に、パスを次のように設定する必要があります。
「マイ コンピュータ」->「プロパティ」->「詳細設定」->「環境変数」を選択
し、環境変数のパスの後に「C:JDK」を追加します。 bin;.;C: JDKlib は
次のように構成することもできます: C:JDKbin;.;C:JDKlibdt.jar;C:JDKlibtools.jar
★覚えておいてください: 環境変数に「Less」を指定しないでください。エラーが少ない場合は、後でお知らせします。
dt.jar は実行環境に関するクラス ライブラリであり、tools.jar は一部のツールに関するクラス ライブラリです。C
:JDKbin が設定されていない場合、「javac'」は内部コマンドでも外部コマンドでもありません。実行可能なプログラムですか、それともバッチ ファイルですか。」というエラーが表示されます。
以下のサンプル プログラムを作成してみましょう。Editplus
を開き、新しい Java ファイルを作成します。次のように入力してください。すべての単語を覚えて、大文字と小文字を区別してください。
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello,World!");
}
、
このファイルを HelloWorld.java に保存します (ctrl + s)。Java では大文字と小文字が区別されるため、helloworld.java などではなく、HelloWorld.java である必要があります。
実行: [スタート] -> [ファイル名を指定して実行] -> [cmd] を実行して、
ディレクトリをコンソールの現在のディレクトリに切り替えます:
javac HelloWorld.java
java HelloWorld は、
コンソールに HelloWorld! という出力を表示します。javac
は、HelloWorld.java を HelloWorld.class にコンパイルするコマンドです。
このとき、
JVM は HelloWorld.class を解釈して実行します。
:
1. スレッド「メイン」の IfException java.lang.NoClassDefFoundError: HelloWorld
これは、環境変数にそれを追加しなかったことを意味します (ドット)
2. スレッド「main」で java.lang.NoSuchMethodError: main が発生した場合。
、「HelloWorld.java」
というファイルで定義する必要があります
。つまり、この HelloWorld を大文字と小文字を区別せずに記述するか、保存時に HelloWorld.java として保存しません。この名前はパブリック クラスの名前と同じでなければなりません。
環境変数についてはこれで終わりです。次に、[ツール]->[パラメータ設定]->[ユーザー ツールの設定1
]でコンパイルおよび実行する方法について説明します。
ツールの追加 (アプリケーションの追加)
メニュー テキスト: Java プログラムのコンパイル
: C:JDKbinjavac.exe
パラメータ: ファイル名
初期ディレクトリ: ファイル ディレクトリ
2. ツールの追加 (アプリケーションの追加)
メニュー テキスト: Java プログラムの実行
: C: JDKbinjava.exe
パラメータ:ファイル名(拡張子を除く)
初期ディレクトリ:ファイルディレクトリ
ツールグループ名はJavaプログラムのデバッグなど任意に追加できます。
次に、[ツール] のドロップダウン メニューに、[Java プログラムのコンパイル] と [Java プログラムの実行] の 2 つのオプションが表示されます。今後は、ctrl + 1 を使用してプログラムをコンパイルし、ctrl + 2 を使用してプログラムを実行できます
。 Servlet の:
Servlet を実行するには、JSP/Servlet コンテナが必要です。初心者には Tomcat を使用することをお勧めします。
Tomcat (最新バージョン 5.0): http://localhost:8080ようこそインターフェイスが表示された場合は、Tomcat に問題がないことを意味します。次に、上記のように最初のサーブレットを作成します。
java.io.* をインポートします。
javax.servlet.* をインポートします。
インポート javax.servlet.http.*;
パブリック クラス HelloWorld は HttpServlet を拡張します
{
public void doGet(HttpServletRequestリクエスト,HttpServletResponseレスポンス)throws ServletException,IOException
{
response.setContentType("text/html");
PrintWriter 出力 = response.getWriter();
out.println("<html><見出し><タイトル>");
out.println("これは私の最初のサーブレットです");
out.println("</タイトル></頭><本文>");
out.println("<h1>Hello,World!</h1>");
out.println("</body></html>")
;
、
javac HelloWorld.java を使用してこのファイルを通常どおりコンパイルし、javax.servlet.* のインポートに失敗した場合は、
C:Tomcatcommonlib にある servlet.jar ファイルを C:JDKjre にコピーする必要があります。 lib ext、再度コンパイルすれば問題ありません。
次に、Tomcat ディレクトリの C:TomcatwebappsROOT にあるファイル構造
ROOTindex.html
を押します。
ROOTwelcom.jsp
ROOTWEB-INFlibMyServlet.jar (サーブレットの .class が .jar ファイルに入力されている場合は、それを lib の下に置きます)
ROOTWEB-INFclassesHelloWorld.class (上で生成した HelloWorld.class ファイルをこの中に置きます)
、ブラウザにhttp://localhost:8080/servlet/HelloWorldと入力すると、サーバーは予想どおりエラーを報告します。エラー 404 -- 見つかりません
何が起こったのでしょうか?
サーブレットは、ディレクトリ C:TomcatwebappsROOTWEB-INF にある web.xml ファイルを使用して登録する必要があります。EP で web.xml ファイルを開き、
<servlet>
を追加します。
<サーブレット名>HelloWorld</サーブレット名>
<サーブレットクラス>HelloWorld</サーブレットクラス>
</サーブレット>
<サーブレットマッピング>
<サーブレット名>HelloWorld</サーブレット名>
<url-パターン>/servlet/helloworld</url-pattern>
</servlet-mapping>
このような構造です
<servlet>
<サーブレット名>HelloWorld</サーブレット名>
<サーブレットクラス>HelloWorld</サーブレットクラス>
</servlet> は、
指定された組み込みサーブレット クラスを示します。そして次の構造:
<servlet-mapping>
<サーブレット名>HelloWorld</サーブレット名>
<url-pattern>/servlet/HelloWorld</url-pattern>
</servlet-mapping>は、
HelloServletをどのURLパターンにマッピングするかを指定することを示します。
web.xml を変更した後、サーバーを再起動し、 http://localhost:8080/servlet/HelloWorldと入力すると、巨大な Hello, World! が表示されます。