eclipseとtomcatでJSP/Servlet(その4)
前回の続き。
今回はServletの作成手順。
それではServletファイルの作成について。 プロジェクトを作成してjavaのソースファイルを新規作成すると(おそらく)プロジェクト内のWEB-INF/src内に.javaファイルが作成される。 基本的にはそこにServletの記述をすればよい。 作成する時の注意点としては、
- HttpServletをextendsする必要がある(パスはjavax.servlet.http.HttpServlet)。
- クラス内にdoGetメソッドを作成する(doGet, doPostメソッドが、ブラウザからアクセスした時のリクエストを受け取るため)。
web.xmlの作成について。 プロジェクト内のWEB-INFフォルダ内に通常の新規作成ファイルでweb.xmlというファイルを作成する。 そして、
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <servlet> <servlet-name>serv</servlet-name> <servlet-class>ServTest</servlet-class> </servlet> <servlet-mapping> <servlet-name>serv</servlet-name> <url-pattern>/serv</url-pattern> </servlet-mapping> </web-app>
と、記述する。
これの具体的な意味を解説する。
servletタグ内
・servlet-name:web.xml内で使用する「servlet-class」に対する名前
・servlet-class:作成したjavaファイルの拡張子より前の名前(詳しく書くと生成されたclassファイルの拡張子なしの名前)
ここで定義したservlet-nameを使用して以下でhttpでアクセスする際のURLマッピングを行う。
servlet-mappingタグ内
・servlet-name:上記で定義したservlet-name
・url-pattaern:ここで記述したアドレスにアクセスするとservlet-nameで定義したservletファイルにアクセスすることになる。つまり、ServTestにアクセスするということである。
ちなみにアクセスするアドレスは
http://localhost:8080/プロジェクト名/url-pattaernとなる。
したがって上記例で、プロジェクト名をtestとすると
http://localhost:8080/test/serv
というURLでアクセスできることになる。
注意:この設定はあくまでもJsp/Servlet開発環境としての設定です。このような設定でJsp/Servlet稼動サーバとしての実用に耐えられる保障はありません。ご注意を。