Tomcat で URL を HttpServlet クラスにマップするにはどうすればよいですか。
例 /calc のリクエストを Calc.java で処理したい
へのリクエストは次の127.0.0.1:800/calc
ように呼び出します。
public class Calc extends HttpServlet {
/* ... */
}
tomcat7 を使用している場合は、注釈を追加するのと同じくらい簡単です。
@WebServlet(urlPatterns="/calc")
public class Calc extends HttpServlet {
/* ... */
}
これについて説明している「最初のWebアプリケーション」に関するTomcatのマニュアルセクションを読むことで、大きなメリットが得られると思います。
web.xmlに次の構成を追加します
<servlet>
<servlet-name>calcServlet</servlet-name>
<servlet-class>packagename.Calc</servlet-class> <!-- change the name of package according to your class -->
</servlet>
<servlet-mapping>
<servlet-name>calcServlet</servlet-name>
<url-pattern>/calc</url-pattern>
</servlet-mapping>
この構成は、Tomcat ではなく、ファイルにweb.xml
含める必要があると思います。war
Servlet3.0 を使用している場合は、アノテーションも使用できます。
@WebServlet(urlPatterns="/yoururl")