ServletContext を使用した WAR/WEB-INF ディレクトリ内のリソースへのアクセス
はじめに:
Java Web アプリケーションは、多くの場合、重要なリソースを WAR/WEB-INF ディレクトリ内に保存します。これらのリソースにアクセスするには、開発者は ServletContext API を利用できます。
質問:
WAR/WEB-INF にあるリソースへの正しいパスを作成するにはどうすればよいですか?フォルダーなど"/war/WEB-INF/test/foo.txt"?
答え:
WAR/ 内のリソースへのパスを構築するには、主に 2 つの方法があります。 ServletContext:
1 を使用する WEB-INF ディレクトリ。 getRealPath() メソッド:
WAR ファイルが一連のファイルに展開されている場合は、getRealPath() メソッド:
ServletContext context = getContext(); String fullPath = context.getRealPath("/WEB-INF/test/foo.txt");
これにより、リソースへの完全なシステム パスが返されます。
2. getResource() または getResourceAsStream() メソッド:
これらのメソッドは、WAR ファイルが展開されているかどうかに関係なく使用できます。
ServletContext context = getContext(); URL resourceUrl = context.getResource("/WEB-INF/test/foo.txt"); // for URL InputStream resourceContent = context.getResourceAsStream("/WEB-INF/test/foo.txt"); // for input stream
補足:
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3