ホームページ >Java >&#&チュートリアル >ServletContext.getRealPath('/') は何を返しますか?また、いつ使用を避けるべきですか?

ServletContext.getRealPath('/') は何を返しますか?また、いつ使用を避けるべきですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-19 22:54:11742ブラウズ

What does ServletContext.getRealPath(

servletcontext.getRealPath("/") の意味は何ですか?

ServletContext#getRealPath( ) メソッドは、Web コンテンツ パス (Web コンテンツ上の展開された WAR フォルダー構造内のパス) を変換します。

getRealPath() に渡される「/」は、Web コンテンツのルート、次の /web フォルダーを表します。プロジェクト構造:

 |-- src<br> |    :<br> |<br> |-- ウェブ<br> |    |-- META-INF<br> |    |    `-- MANIFEST.MF<br> |    |-- WEB-INF<br> |    |    `-- web.xml<br> |    |--index.jsp<br> |    `--login.jsp<br> : <br>

したがって、getRealPath("/") は、/web フォルダーの絶対ディスク ファイル システム パスを返します。プロジェクトの展開された WAR ファイル。

いつ行うべきか使用しますか?

getRealPath() の使用は避けてください。



    < li>Web リソースの InputStream を取得する: を使用します。 ServletContext#getResourceAsStream()
  • 利用可能な Web リソース パスのリストの取得: ServletContext#getResourcePaths() を使用します

  • 個々のリソースをURL: を使用してくださいServletContext#getResource()

追加メモ

に書き込まれるファイルに加えられた変更getRealPath() によって返されたパスは WAR 時に失われますredeployment.

getRealPath() は、WAR ファイルがディスク ファイル システムに展開されることを前提としていますが、常にそうであるとは限りません。このようなシナリオでは、getRealPath() は null または予期しないパスを返す可能性があります。

以上がServletContext.getRealPath('/') は何を返しますか?また、いつ使用を避けるべきですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。