春のMVCアプリケーションで、ファイルシステムを参照するための最良の方法は何ですか?
アプリケーションパスのルートを知りたいとしましょう。
プロパティファイルを作成し、この値をプロパティファイルにハードコーディングしてから、本番環境と開発環境用に異なるバージョンを作成する必要がありますか?
アプリケーションの外部でもファイルを参照したい場合があるので、プロパティファイルがこれに最も適していると思いますか?
春のMVCアプリケーションで、ファイルシステムを参照するための最良の方法は何ですか?
アプリケーションパスのルートを知りたいとしましょう。
プロパティファイルを作成し、この値をプロパティファイルにハードコーディングしてから、本番環境と開発環境用に異なるバージョンを作成する必要がありますか?
アプリケーションの外部でもファイルを参照したい場合があるので、プロパティファイルがこれに最も適していると思いますか?
私はあなたの質問をコーディングの問題ではなく、設定/リリースの問題として理解しました。(たとえば絶対パスを使用して)ファイルにアクセスする場合は、さまざまな方法でアクセスできます。
Mavenを使用してアプリをビルドする場合。対応するプロパティを使用してMavenプロファイルを作成します。たとえばfile.path
、ビルド時にプロパティをSpring Bean(たとえばString)に入力します。
さまざまな環境の構成パラメーターを含むさまざまなプロパティファイルを作成します。そして、mavenにspringconfのプレースホルダーを埋めさせます。このプロパティファイルを使用する必要があります。
スプリングプロファイルを使用します。サーバー関連のBeanをプロファイルに配置すると、アプリケーションは実行時に適切なプロファイル(Beanのセット)を選択します。
環境ごとに異なるデータベースがある場合は、いくつかの構成パラメーターを構成テーブルに保存することを検討できます。また、アプリケーションは、起動時または必要なときにこれらのデータをロードします。少なくともこれは別のオプションです。
それはあなたの質問に答えましたか?または私は何か他のことについて話しているだけですか?...
実際のパスを取得し、残りのアクションを完了します
String realContextPath = session.getServletContext().context.getRealPath(request.getContextPath());