サーブレット(JavaServlet) コード備忘録,サーバ情報の取得/パスの取得
たびたび使用するコードを記録。
稼動中のサーバ情報の取得
現在のサーブレットを稼動しているサーバの ホスト名やポートを調べるには、次の方法でよいようだ
public void doGet(
javax.servlet.ServletRequest req,
javax.servlet.ServletResponse res){
String serverName=req.getServerName();
String serverPort=req.getServerPort();
//do something
}
パスの取得
Webアプリケーション直下の実際のパスを知りたいときに 使用するメソッド(JSPの場合)
String rpath=application.getRealPath("/");
String webappname=new File(rPath).getName();
※applicationというのは、getServletConfig().getContext()から得られる、 ServletContextオブジェクトにすぎない。 ので、Servletでパスを取得したい場合は、そちらのメソッドを使えばよい。
したがってサーブレットで、WEBアプリケーションのパスを得たい場合は 以下のようにすればよいことになる。
String rPath=getServletContext().getRealPath("/");
String webappname=new File(rPath).getName();