ホームページ  >  記事  >  Java  >  App Engine プロジェクトの WAR/WEB-INF フォルダー内のリソースにアクセスするにはどうすればよいですか?

App Engine プロジェクトの WAR/WEB-INF フォルダー内のリソースにアクセスするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-13 16:20:02755ブラウズ

How to Access Resources in the WAR/WEB-INF Folder in an App Engine Project?

WAR/WEB-INF フォルダー内のリソースへのアクセス

war/WEB-INF フォルダー内のファイルへのアクセスアプリ エンジン プロジェクトは、File() クラスを使用して実現できます。必要なパスを構築する方法は次のとおりです。

Java コード:

import javax.servlet.ServletContext;

ServletContext context = getContext();
String fullPath = context.getRealPath("/WEB-INF/test/foo.txt");

上記のコードは、ServletContext の getRealPath() メソッドを利用して、リソースへの完全なシステム パスを取得します。サーブレット コンテナが WAR ファイルを展開しない場合は、次のコードを使用することもできます:

Java コード:

import javax.servlet.ServletContext;

ServletContext context = getContext();
URL resourceUrl = context.getResource("/WEB-INF/test/foo.txt");

代わりに、入力ストリームを直接取得できることに注意してください。 getResourceAsStream() メソッドを使用する:

import javax.servlet.ServletContext;

ServletContext context = getContext();
InputStream resourceContent = context.getResourceAsStream("/WEB-INF/test/foo.txt");

サーブレット コンテナーやデプロイメントの場所に関係なく、後者のアプローチは常に成功します。一方、前者のアプローチでは、デプロイメントの前に WAR ファイルを解凍する必要があります。

以上がApp Engine プロジェクトの WAR/WEB-INF フォルダー内のリソースにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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